R语言 面板数据分析 plm包实现(一) ——LSDV和固定效应模型
系列文章
R做面板数据分析:R语言 面板数据分析 plm包实现(一) ——LSDV和固定效应模型
如果想看随机效应模型怎么做,参见这篇文章
R语言 面板数据分析 plm包实现(二)——随机效应模型如果想看如何判断面板数据适用随机效应模型还是固定效应模型,参见这篇文章:
R语言 面板数据分析 plm包实现(三)——面板数据与面板模型的检验使用随机效应模型,且一些时间或个体存在数据缺失,应当使用Swamy Arora估计,如何用R语言来实现,参见这篇文章:
R语言 面板数据如何做Swamy Arora估计。如何从统计年鉴获知某地接受转移支付额度
目录
- 系列文章
- 1.安装plm包
- 2.模型描述
- 数据导入
- 3.pool 模型
- 4.个体固定效应的Panel模型——不考虑时间差异,考虑公司差异的估计
- 4.1LSDV(虚拟变量OLS回归)模型
- 4.2组内模型(within)
- 5 时间固定效应Panel模型——考虑时间差异忽略公司差异
- 6.个体和时间双维固定效应模型--Panel数据
- 7.可供参考的资料
LSDV是虚拟变量回归。
看完这篇文章,如果对你有帮助,请帮我点个赞或者star哦~
1.安装plm包
可能会遇到错误:
采用这个指令进行安装:
install.packages("plm",type = "binary")
library(plm)
安装完成
2.模型描述
有数据集:Ex1_1.dta
数据样式:
点击下载
其中FN代表公司,总共有三家;YR代表年份;I是总投资;F是企业实际价值;C是企业实际资本存量。
更多解释:
数据导入
这个数据集是stata的数据集,因此在Rstudio中你可以选择文件–>导入数据集(import dataset)–>导入stata文件,即可完成导入工作
此外,我好像在其它地方也看见过此数据集,如果你无法下载,可以在其它地方寻找数据集(我印象里是在某个面板相关的R程序包里自带的数据集)。
很多童鞋反映数据集获取困难,我把这个数据集上传到github的一个项目里了(免费),注意,只有一个文件是数据集。如果有帮到你,请给文章点个赞哦~
3.pool 模型
Pool模型本质上是对变量去整体均值后进行 OLS 估计,也可以用plm包提供功能实现
首先对数据进行处理使其变为data.frame
rankData<-pdata.frame(Ex1_1,index=c("FN","YR")) #index里是个体和时间,转化为面板数据
pool <- plm(I~ F + C,data=rankData,model="pooling")
summary(pool)
结果:
特别的,和OLS做对比
ols = lm(I~ F + C,data=rankData)
summary(ols)
可见,结果是一样的,从软件结果进一步证实了数学推导,即忽略个体均值和时间差异的pool模型等价于OLS模型。
4.个体固定效应的Panel模型——不考虑时间差异,考虑公司差异的估计
4.1LSDV(虚拟变量OLS回归)模型
增加一个factor因子即可:
注意:factor-1才能展现出十家公司,因为事实上公司设置了虚拟变量
LSDV = lm(I~F+C+factor(FN)-1,data = Ex1_1)#factor-1才能展现出十家公司,因为事实上公司设置了虚拟变量
summary(LSDV)
结果:
解读:
F,C分别代表企业流通股票总价值和企业资本存量,此外还展示了 分别以十家公司做虚拟变量的估计结果,即不同公司是否显著影响企业的投资。
即总共估计的参数是2+9共11个(9个虚拟变量是为了防止完全的多重共线性)
可以使用
4.2组内模型(within)
rankData<-pdata.frame(Ex1_1,index=c("FN","YR"))#第一个参数是面板的个体,第二个参数是面板的时间
within <- plm(I~ F + C,data=rankData,effect = "individual",model="within")
#within组内方法,检验不同个体是否存在差异(忽视时间影响)
summary(within)
解读
- 公司股票价值每增加一个单位,对企业投资的贡献为0.11个单位;公司实际资本存量每增加一个单位,对企业投资对贡献为0.31个单位,这两个解释变量对被解释变量对贡献程度为75.31%
可见,回归结果4.1和4.2相同,即LSDV(虚拟变量OLS回归)和within方法结果相同。
可以使用下面的函数打印偏离总体截距的情况(注意属于one-way model,关于one-way model 和two-way model 的区别,可以点击网页链接查看)
fixef(within)
如果想查看它们的标准误差以及与总体截距相等的检验等详细信息,可以这样做:
summary(fixef(within))
下面展示截距项类似,我就不再赘述
5 时间固定效应Panel模型——考虑时间差异忽略公司差异
采用组内模型进行估计(也可用4.1方法进行估计,把factor(……)中的参数FN改成YR即可,结果是一样的)
rankData<-pdata.frame(Ex1_1,index=c("FN","YR"))#第一个参数是面板的个体,第二个参数是面板的时间
within2 = plm(I~ F + C,data=rankData,effect = "time",model="within")
#within组内方法,检验不同时间是否存在差异(忽视个体影响)
summary(within2)
解读:
- 用第4节中相似的办法可以解读
6.个体和时间双维固定效应模型–Panel数据
rankData<-pdata.frame(Ex1_1,index=c("FN","YR"))#第一个参数是面板的个体,第二个参数是面板的时间
within3 <- plm(I~ F + C,data=rankData,effect = "twoways",model="within")
#twoways参数既考虑个体效益,也考虑时间效应
summary(within3)
解读
解读类似上面。此外F,C的F检验都是显著的(F,C后面的三个星号*)。拒绝全为0的原假设。
7.可供参考的资料
从经管之家帖子看到的
R计量的不多,你下载下面的书去看面板的章节把
Applied Econometrics with R
伍德里奇的配套的书
Principles of Econometrics with R https://bbs.pinggu.org/thread-4805190-1-1.html
或者看 plm包的说明文件(个人不太推荐,感觉写的不清楚)
helphttps://www.jstatsoft.org/article/view/v027i02
https://cran.r-project.org/web/views/Econometrics.html
R语言 面板数据分析 plm包实现(一) ——LSDV和固定效应模型相关推荐
- r语言 面板数据回归_工具方法 | “名牌包”:面板、时间序列模型常用R语言包...
计量经济学是数学.统计技术和经济分析的综合,即运用数学.统计方法和相关经济理论,通过计量模型来揭示经济数量关系和规律.R语言包,已经实现了现代计量经济学的很多统计分析功能,下面从面板数据模型和时间序列 ...
- R语言与数据分析练习:使用ARIMA模型预测网站访问量
R语言与数据分析练习:使用ARIMA模型预测网站访问量 使用ARIMA模型预测网站访问量 一.实验背景: 随着流量的增大,某网站的数据信息量也在以一定的幅度增长 基于该网站2016年9月~2017年2 ...
- R语言数据科学程序包:Tidyverse介绍
R语言数据科学程序包:Tidyverse介绍 1. R语言简介 2. 数据科学简介 3. Tidyverse简介 1. R语言简介 R语言是用于统计计算和绘图的免费软件.它可以在Windows, Un ...
- 【R语言与数据分析实战】绘图
目录 1.散点图 2.图像选项 2.1 坐标轴名称 2.2 图形标题 2.3 点的类型 2.4 点的大小 2.5 颜色 2.6 坐标轴的取值范围 2.7 图像类型 2.8 线型 2.9 图形排列 2. ...
- 看书标记【R语言 商务数据分析实战4】
看书标记--关于R语言 chapter 4 4.2 任务实现 [R语言 商务数据分析实战4] chapter 4 财政收入预测分析 从海量数据中发现隐藏的运行模式,并提供具有决策意义的信息.变量过多会 ...
- 看书标记【R语言 商务数据分析实战5】
看书标记--关于R语言 chapter 5 5.2 任务实现 [R语言 商务数据分析实战5] chapter 5 金融服务机构资金流量预测 数据理解和预处理>>检验平稳性+纯随机性> ...
- R语言与数据分析练习:创建和使用R语言数据集数据的导入导出
R语言与数据分析练习:创建和使用R语言数据集&数据的导入导出 实验一 创建和使用R语言数据集 一.实验目的: 了解R语言中的数据结构. 熟练掌握他们的创建方法,和函数中一些参数的使用. 对创建 ...
- 【R语言与数据分析实战】数据操作(一):基于向量的处理与外部数据处理
目录 1.R中的常用数据集 2.读写CSV文件 (1) 读写CSV文件 (2) 读写对象文件 3.合并数据框的行与列 4.apply系数函数 (1) apply (2) lapply (3) sapp ...
- 《R语言游戏数据分析与挖掘》一2.2 数据对象
2.2 数据对象 R拥有许多用于存储数据的对象类型,包括向量.矩阵.数组.数据框和列表.它们在存储数据的类型.创建方式.结构复杂度,以及用于定位和访问其中个别元素的标记等方面均有所不同.多样化的数据对 ...
最新文章
- thinkphp5.0生命周期
- Angularjs $scope 里面的$apply 方法 和 $watch 方法
- leetcode 343. 整数拆分(Integer Break)
- 域名解析的记录类型区别
- 抱抱星英语Antony:不要用互联网思维做教育 | MCtalk教育访谈摘录
- 【会议记录】第二次例会(10.06)记录
- python代码规范工具_如何检查python3中的代码规范
- pythondatetime_Date
- try...catch...finally java
- Batch Normailzation
- SpringBoot项目集成Mybatis Plus(五)条件构造器
- 两数之和python哈希_LeetCode-python 1.两数之和
- 万字长文带你看尽深度学习中的12种卷积网络
- 杭电1214 圆桌会议
- CACTI实现飞信报警
- 【目标跟踪】|MOSSE原理及对应代码解释 matlab C
- h5调用摄像头 android,H5 使用移动端摄像头
- matlab 第二版 赵元哲 下载,基于MATLAB的黑盒电路仿真设计及应用
- automake manul
- 【学习笔记—eat_pytorch_in_20_days】结构化数据建模流程范例