楼主: 韩佳容
2311 0

[程序分享] R面板数据模型分析 [推广有奖]

  • 0关注
  • 1粉丝

等待验证会员

已卖:174份资源

本科生

34%

还不是VIP/贵宾

-

威望
0
论坛币
525 个
通用积分
1.9518
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
375 点
帖子
13
精华
0
在线时间
148 小时
注册时间
2018-10-3
最后登录
2025-12-22

楼主
韩佳容 发表于 2019-9-2 15:25:52 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
library(stargazer)
library(plm)
library(reshape2)
library(readxl)
TGDP <- read_excel("Desktop/经济变量.xlsx", sheet = "Sheet1")
~~~省略其他变量录入
XA=melt(PUBLIC,id.vars = c('公共预算支出','X2'),
        measure.vars = c('2000','2001','2002','2003','2004','2005','2006','2007','2008','2009','2010','2011','2012','2013','2014','2015','2016'),
        value.name = '公共预算支出')
~~~省略其他变量录入
DATA=merge(x=XA,y=XA_1,all.x = TRUE)
~~~省略其他变量录入
databases=merge(x=databases,y=Y_4,all.x = TRUE)
O=databases
Panel_data=data.frame(O[,4],O[,1],O[,2],O[,49],O[,51],O[,53],O[,55],
                      O[,3],O[,7],O[,11],O[,13],
                      O[,15],O[,17],
                      O[,19],O[,21],O[,23],
                      O[,25],O[,27],O[,29],
                      O[,31],O[,35],O[,37],O[,39],O[,43],
                      O[,45],O[,33])
PANEL=Panel_data[complete.cases(Panel_data),]
library(plm)
###-------个体固定效应模型解决了不随时间而变(time invariant)但随个体而异的遗漏变量问题
#——————时间固定效应,则可以解决不随个体而变 (individual invariant)但随时间而变(time varying)的遗漏 变量问题
#——————既考虑了个体固定效应,又考虑了时间固定 效应,故称为“双向固定效应”(Two-way FE)
#————对于固定效应模型,可对原方程两边进行一阶差分,消去个体效应u
#随机效应模型模型假设u与解释变量均不相关,故 OLS 一致.假设不同个体之间的扰动项互不相关。由于ui 的存在, 同一个体不同时期的扰动项之间存在自相关
#对于随机效应模型还可使用“组间估计量”。如果个 体数据较不准确,可对每位个体取时间平均值,然后用平均值来回归可得“组间估计量——between
#对于固定效应模型,建议使用组内R2————R2 within
#对于组间回归模型,建议使用组间R2————R2 between
f_pool_1=plm(data = move3, model = 'pooling',effect = 'individual',
             净迁入率~ lag(log10(平均可支配收入),1)
             +lag(log10(平均工资),1)
             +lag(log10(房价),1)
             +lag(log10(人均GDP),1)
             +lag(log10(公共预算支出),1)
             +lag(log10(市区人口密度),1)
             +lag(城镇户籍人数/常住人口,1)
             +lag(log10(建成区面积),1)
             +lag(log10(第三产业就业人数),1)
             +lag(城市垃圾处理率,1)
             +lag(log10(高教专职教师任职数+0.1),1))
summary(f_pool_1)
#个体固定效应模型可以解决 "不随时间而变" 但"随个体而异" 的遗漏变量问题:>>>
f_fix_1=plm(data = move3, model = 'within',effect = 'individual',
            净迁入率~ lag(log10(平均可支配收入),1)
            +lag(log10(平均工资),1)
            +lag(log10(房价),1)
            +lag(log10(人均GDP),1)
            +lag(log10(公共预算支出),1)
            +lag(log10(市区人口密度),1)
            +lag(城镇户籍人数/常住人口,1)
            +lag(log10(建成区面积),1)
            +lag(log10(第三产业就业人数),1)
            +lag(城市垃圾处理率,1)
            +lag(log10(高教专职教师任职数+0.1),1)
)
summary(f_fix_1,robust = TRUE)
#——————时间固定效应,则可以解决"不随个体而变"但"随时间而变"的遗漏变量问题:>>>
f_fix_2=plm(data = move3, model = 'within',effect = 'time',
            净迁入率~ lag(log10(平均可支配收入),1)
            +lag(log10(平均工资),1)
            +lag(log10(房价),1)
            +lag(log10(人均GDP),1)
            +lag(log10(公共预算支出),1)
            +lag(log10(市区人口密度),1)
            +lag(城镇户籍人数/常住人口,1)
            +lag(log10(建成区面积),1)
            +lag(log10(第三产业就业人数),1)
            +lag(城市垃圾处理率,1)
            +lag(log10(高教专职教师任职数+0.1),1)
)
summary(f_fix_2,robust = TRUE)
f_fix_3=plm(data = move3, model = 'within',effect = 'twoways',
            净迁入率~ lag(log10(平均可支配收入),1)
            +lag(log10(平均工资),1)
            +lag(log10(房价),1)
            +lag(log10(人均GDP),1)
            +lag(log10(公共预算支出),1)
            +lag(log10(市区人口密度),1)
            +lag(城镇户籍人数/常住人口,1)
            +lag(log10(建成区面积),1)
            +lag(log10(第三产业就业人数),1)
            +lag(城市垃圾处理率,1)
            +lag(log10(高教专职教师任职数+0.1),1)
)
summary(f_fix_3,robust = TRUE)
RESULT_FIX=stargazer(f_fix_1,f_fix_2,f_fix_3,title = '固定效应模型',align = FALSE,
                     type = "text",digit.separator = ' ',
                     colnames = FALSE,column.labels = c('个体效应','时间效应','双向效应'))
# ——-——H0: (no cross-sectional effects) that is based on the pooled estimator 混合模型pool成立
plmtest(f_pool_1,effect = 'individual',type = 'bp')
#Lagrange Multiplier Test - (Breusch-Pagan) for unbalanced panels                 p-value = 0.2753  接受原假设 >>> pooling
plmtest(f_pool_1,effect = 'time',type = 'bp')
#Lagrange Multiplier Test - time effects (Breusch-Pagan) for unbalanced panels    p-value = 0.01561 拒绝原假设 >>> fix time
plmtest(f_pool_1,effect = 'twoways')
# two-ways effects (Honda) for unbalanced panels                normal = 0.93831, p-value = 0.174  接受原假设 >>>pooling
## 时间效应上需要固定, 而个体效应上可混合
plmtest(f_pool_2,effect = 'time')                                             #   p-value = 0.002801  拒绝原假设 >>>fix time
plmtest(f_pool_2,effect = 'individual')                                       #   p-value = 0.8705    接受原假设 >>>pooling

f_random_1=plm(data = move3, model = 'random',effect = 'individual',
               净迁入率~ lag(log10(平均可支配收入),1)
               +lag(log10(平均工资),1)
               +lag(log10(房价),1)
               +lag(log10(人均GDP),1)
               +lag(log10(公共预算支出),1)
               +lag(log10(市区人口密度),1)
               +lag(城镇户籍人数/常住人口,1)
               +lag(log10(建成区面积),1)
               +lag(log10(第三产业就业人数),1)
               +lag(城市垃圾处理率,1)
               +lag(log10(高教专职教师任职数+0.1),1)
               )
summary(f_random_1)


f_ht_1=plm(data = move3, model = 'random',random.method = 'ht',
           净迁入率~ lag(log10(平均可支配收入),1)
           +lag(log10(平均工资),1)
           +lag(log10(房价),1)
           +lag(log10(人均GDP),1)
           +lag(log10(公共预算支出),1)
           +lag(log10(市区人口密度),1)
           +lag(城镇户籍人数/常住人口,1)
           +lag(log10(建成区面积),1)
           +lag(log10(第三产业就业人数),1)
           +lag(城市垃圾处理率,1)
           +lag(log10(高教专职教师任职数+0.1),1))
summary(f_ht_1,robust = TRUE)
RESULT_RAN=stargazer(f_random_1,f_ht_1,title = '随机效应模型',align = TRUE,type = 'text',
                     digit.separator = ' ',column.sep.width = '20pt',
                     colnames = TRUE,column.labels = c('随机效应','面板工具变量'))
# 面板工具变量模型最优
#————————Hausman检验————————
#——原假设H0:随机效应模型为正确模型
#  如果原假设成立,则 RE 比 FE 更有效。但如果原假设不成立,则 RE 不一致,而无论原假设成立与否,FE 都是一致的
#____如果该统计量大于临界值,则拒绝H0 ——例:p值为0.0000,故强烈拒绝原假设认为应该使用固定效应模型,而非随机效应模 型
#——————chisq = 22.835, df = 10, p-value = 0.01137    拒绝H0 >>> 结论为fix 更好
phtest(f_fix_1,f_random_1)  #—— p-value = 0.01053    拒绝H0 >>> 结论为fix 更好
phtest(f_fix_2,f_random_2)  #—— p-value = 1.108e-06    拒绝H0 >>> 结论为fix 更好
phtest(f_fix_2,f_ht_1) #————p-value = 0.9101   接受H0 >>> 结论为面板工具变量随机效应模型更好
#Oneway (individual) effect First-Difference Model

#****************************************************************************************************




二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:面板数据R语言计量分析

已有 1 人评分论坛币 收起 理由
llb_321 + 5 精彩帖子

总评分: 论坛币 + 5   查看全部评分

本帖被以下文库推荐

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-7 20:32