面板數據及其基本模型


面板數據的定義

在學習面板數據之前,我先介紹時間序列數據和截面數據的概念

時間序列數據:

時間序列數據是指對同一對象在不同時間連續觀察所取得的數據。它着眼於研究對象在時間順序上的變化,尋找空間(對象)歷時發展的規律。利用時間序列作樣本時,要注意幾個問題:一是所選擇的樣本區間內經濟行為的一致性問題;二是樣本數據在不同樣本點之間不可比,需要對原始數據進行調整,消除其不可比因素;三是樣本觀測值過於集中,因而時間序列數據不適宜於對模型中反映長期變化關系的結構參數的估計;四是模型隨機誤差的序列相關問題。
**notes:兩個關鍵詞:同一個對象,不同時間,例如:2016-2018年上海市月度cpi同比數據。。

截面數據:

橫截面數據是指在某一時點收集的不同對象的數據。它對應同一時點上不同空間(對象)所組成的一維數據集合,研究的是某一時點上的某種經濟現象,突出空間(對象)的差異。橫截面數據的突出特點就是離散性高。橫截面數據體現的是個體的個性,突出個體的差異,通常橫截面數據表現的是無規律的而非真正的隨機變化。即計量經濟學中所謂的“無法觀測的異質性”。在分析橫截面數據時,應主要注意兩個問題:一是異方差問題,由於數據是在某一時期對個體或地域的樣本的采集,不同個體或地域本身就存在差異;二是數據的一致性,主要包括變量的樣本容量是否一致、樣本的取樣時期是否一致、數據的統計標准是否一致。
**notes:某一時間 不同對象例如:上海市2016年7月cpi,gdp,ppi...

面板數據:

面板數據,即Panel Data,是截面數據與時間序列綜合起來的一種數據資源。 在分析時,多用PanelData模型,故也被稱為面板數據模型. 它可以用於分析各樣本在時間序列上組成的數據的特征,它能夠綜合利用樣本信息,通過模型中的參數,既可以分析個體之間的差異情況,又可以描述個體的動態變化特征。

時間序列數據和截面數據的組合就是不同時間,不同對象的組合,這里我直接圖吧,看得明白一些

截取平時用的數據的一部分,自行領悟。。

模型:我目前跑過的模型比較少

主要有:混合模型,固定效用模型和隨機效應模型,r語言做的模型不是很難,但是吧,數據處理起來是真的麻煩。。
這里貼一點代碼,就是R plm包的 使用方式。。可以自行查閱,這里給個地址,不是很難主要是,修改參數
https://cran.r-project.org/web/packages/plm/plm.pdf

pooling1_v5 <- plm(diff(CPI_YoY) ~ diff(log(M2)) + diff(r) + diff(log(GDP)) + diff(log(RE)) + 
                     diff(log(Res)), data=pdata, model= "pooling",index=c("ID", "Yr"),effect = "twoways")
pooling1 <- plm(diff(CPI_YoY) ~ diff(log(M2)) + diff(r) + diff(log(GDP)) + 
                  diff(log(RE)) + diff(log(Res)) + diff(log(CI)), data=pdata, model= "pooling",index=c("ID", "Yr"),effect = "twoways")
summary(pooling1)
pooling1_2 <- coeftest(pooling1, vcovHC
         (pooling1, method = "arellano"))
pooling1_v5_2 <- coeftest(pooling1_v5, vcovHC
         (pooling1_v5, method = "arellano"))
pooling1_2

Opt: "within", "random", "ht", "between", "pooling", "fd"

Fixed effect

pooling1_fixed <- plm(diff(CPI_YoY) ~ diff(log(M2)) + diff(r) + diff(log(GDP)) + 
                        diff(log(RE)) + diff(log(Res)) + diff(log(CI)), data=pdata, model= "within",index=c("ID", "Yr"),effect = "twoways")
summary(pooling1)
pooling1_2_fixed <- coeftest(pooling1, vcovHC
         (pooling1, method = "arellano"))

Output

library(stargazer)
stargazer(pooling1,pooling1_2, pooling1_v5,
          pooling1_v5_2,pooling1_fixed,pooling1_2_fixed, type = "text")

Model 2

"arellano" - both heteroskedasticity and serial correlation. Recommended for fixed effects.

pooling <- plm(diff(log(M2)) ~ diff(CPI_YoY) + diff(log(GDP)) + diff(r) + diff(log(RE)) + diff(log(Res)) + diff(log(CI)), data=pdata, model= "pooling",index=c("ID", "Yr"),effect = "twoways")
pooling_2 <- coeftest(pooling, vcovHC
         (pooling, method = "arellano"))

Fixed effect

pooling_fixed <- plm(diff(log(M2)) ~ diff(CPI_YoY) + diff(log(GDP)) + diff(r) + diff(log(RE)) + diff(log(Res)) + diff(log(CI)), data=pdata, model= "within",index=c("ID", "Yr"),effect = "twoways")
pooling_2_fixed <- coeftest(pooling, vcovHC
         (pooling, method = "arellano"))
pooling_v5 <- plm(diff(log(M2)) ~ diff(CPI_YoY) + diff(log(GDP)) + diff(r) + diff(log(RE)) + diff(log(Res)), data=pdata, model= "pooling",index=c("ID", "Yr"),effect = "twoways")
summary(pooling)
pooling_v5_2 <- coeftest(pooling_v5, vcovHC
         (pooling_v5, method = "arellano"))

Output

stargazer(pooling,pooling_2,pooling_v5, pooling_v5_2, pooling_fixed,pooling_2_fixed,type = "text", 
          title = "Comparasions b/w pooling, pooling w/o CI and fixed effect")

Model 3

pooling3 <- plm(diff(r) ~ diff(log(M2)) + diff(CPI_YoY) + diff(log(GDP)) + diff(log(RE)) + diff(log(Res)) + diff(log(CI)), data=pdata, model= "pooling",index=c("ID", "Yr"),effect = "twoways")
summary(pooling3)
pooling3_2 <- coeftest(pooling3, vcovHC
         (pooling3, method = "arellano"))

Fixed effect

pooling3_fixed <- plm(diff(r) ~ diff(log(M2)) + diff(CPI_YoY) + diff(log(GDP)) + diff(log(RE)) + diff(log(Res)) + diff(log(CI)), data=pdata, model= "within",index=c("ID", "Yr"),effect = "twoways")
summary(pooling3)
pooling3_2_fixed <- coeftest(pooling3, vcovHC
         (pooling3, method = "arellano"))
pooling3_v5 <- plm(diff(r) ~ diff(log(M2)) + diff(CPI_YoY) + diff(log(GDP)) + diff(log(RE)) + diff(log(Res)), data=pdata, model= "pooling",index=c("ID", "Yr"),effect = "twoways")
pooling3_v5_2 <- coeftest(pooling3_v5, vcovHC
         (pooling3_v5, method = "arellano"))

Output

stargazer(pooling3,pooling3_2, pooling3_v5, pooling3_v5_2,pooling3_fixed,pooling3_2_fixed, type = "text")

emmmm,我看到一個博主使用老友記演員表的方式說明了時間序列,截面數據和面板數據的區別,通俗易懂,地址放到這里了,有興趣可以看一下
很nice https://blog.csdn.net/secondlieutenant/article/details/79625694

解釋幾個函數
diff()是差分的,默認一階差分

log()這個常見,取對數

stargazer這個函數就是整合結果到一個表中
結果很美觀
學習包的地址:
https://cran.r-project.org/web/packages/stargazer/stargazer.pdf


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM