1. 请问STATA里sort,tsset的指令是什么意思?
sort指令是STATA数据库的维护的排序指令。tsset是定义数据是一个时间序列数据。如果想对数据文件定义year为时间变量,则输入命令:tsset year。
Stata 是一套提供其使用者数据分析、数据管理以及绘制专业图表的完整及整合性统计软件。它提供许许多多功能,包含线性混合模型、均衡重复反复及多项式普罗比模式。
扩展资料
统计功能
Stata的统计功能很强,除了传统的统计分析方法外,还收集了近20年发展起来的新方法,如Cox比例风险回归,指数与Weibull回归,多类结果与有序结果的logistic回归,Poisson回归,负二项回归及广义负二项回归,随机效应模型等。具体说, Stata具有如下统计分析能力:
数值变量资料的一般分析:参数估计,t检验,单因素和多因素的方差分析,协方差分析,交互效应模型,平衡和非平衡设计,嵌套设计,随机效应,多个均数的两两比较,缺项数据的处理,方差齐性检验,正态性检验,变量变换等。
分类资料的一般分析:参数估计,列联表分析 ( 列联系数,确切概率 ) ,流行病学表格分析等。
等级资料的一般分析:秩变换,秩和检验,秩相关等
相关与回归分析:简单相关,偏相关,典型相关,以及多达数十种的回归分析方法,如多元线性回归,逐步回归,加权回归,稳键回归,二阶段回归,百分位数 ( 中位数 ) 回归,残差分析、强影响点分析,曲线拟合,随机效应的线性回归模型等。
其他方法:质量控制,整群抽样的设计效率,诊断试验评价, kappa等。
参考资料来源:百度百科-stata
2. stata的时间序列分析中如何实现对数据的一阶差分,最好指令写出来·谢谢。。。。。
如果是连贯的时间序列
tsset date
gen d_price = d.price // 一阶差分
如果不连贯
gen date_c = _n
tsset date_c
gen d_price = d.price
3. stata 时间序列 年和月怎么tsset
第一个问题,由于你的时间序列中日期的输入中有字符,所以STATA默认为字符形式的数据,故出现错误。
应该使用encode timevar ,gen (newvar)转换
第二个问题,你使用的其他变量不符合时间序列变量定义的格式要求
4. 股票收益率为什么要用对数收益率,请问各位大侠,对数收益率有什么优势?
因为常用的时间序列分析的模型,都要求随机变量是二阶矩平稳,很明显价格序列通常是I(1)过程,或者是广义维纳过程。这一类过程二阶矩不平稳,很多模型不适用,所以要进行对数转换,变成平稳的序列。
对数收益率的时序可加性能够使用另外两个利器:中心极限定理和大数定律。假设初始资金 X_0(假设等于 1),ln(X_T) = ln(X_T/X_0) 就是整个T期的对数收益率。对数收益率的最大好处是可加性,把单期的对数收益率相加就得到整体的对数收益率。
扩展资料:
影响股票收益率的因素:
1、企业分配政策:由于不同企业所处发展阶段不同,经营效率不同,现金流量状况不同及规模扩张动力大小不同,因此会有不同的分配政策。这会直接影响红利分配的数量及红利分配的形式,也对资本增值收益产生间接影响。
2、企业所处行业特征:通常企业所处行业若为成长性行业、高科技行业,由于这些行业成长性高,发展前景广阔而被市场看好,因此市场预期趋同使这类股票受到追捧,从而有较高的市场价或存在着较高的价格上升潜力。反之处于传统产业甚至夕阳产业的企业,股票价格表现一般不会很好,从而投资难以获得差价收入。
3、宏观经济状况:宏观经济状况是股价变化的重要外部因素,具体包括经济增长周期、经济政策及经济指标变化特征等。宏观经济状况好,企业业绩增长外部环境好,股价容易上涨。
参考资料来源:百度百科-股票收益率
参考资料来源:百度百科-分形市场假说
5. Linux 常用命令(要求全而精)
1、linux分区
--在linux里面所有的设备、任何东西,在linux看来都是文件。
--文件在它看来,有两种形式:
第一种是字符型(键盘输入、打印机);
第二种是二进制型(硬盘、光驱、U盘)
--linux中所有硬件
--手动分区
--A、至少有两个分区
/ 根分区
SWAP 交换分区(物理内存大小的两倍)
--B、个人桌面分区
/
/boot 128MB is enough
/usr
SWAP
/tmp(用于光盘刻录)
2、linux目录说明
--/dev/xxyN
--xx (分区所在设备类型:hd--IDE硬盘 sd--SCSI硬盘)
--y (标明分区所在设备
例如:/dev/hda 第一个IDE硬盘 或 /dev/hdb 第二个IDE硬盘 或 /dev/sdb 第二个SCSI硬盘)
--N (数字代表分区:1-4--主分区或扩展分区;逻辑分区从5开始!
例如:/dev/hda3 第一个IDE硬盘上的第三个主分区或扩展分区
/dev/sdb6 第二个SCSI硬盘上的第二个逻辑分区)
3、linux目录结构
/ 根目录,最高级别
/bin 系统基本命令存放目录(/usr/bin)
/boot linux的内核及引导系统程序文件存放目录(如:vmlinuz、initrd.img)
一般情况下,GRUB或LILO系统引导管理也位于这个目录
/dev 设备文件存储目录,如声卡、光驱...
/ect 存放系统设置文件(如用户账号密码、服务器配置文件等)
/home 普通用户家目录,默认存放目录
/lib 库文件存放目录
/lost+found 在ext2或ext3文件系统中,当系统以外崩溃或机器意外关机,而产生一些文件碎片放在这里。
当系统启动的过程中,fsck工具会检查这里,并修复已经损坏的文件系统。
有事喜用发生问题,有很多的文件被移到这个目录中,可能会用手工的方式来修复,或者移文件到原来的位置上。
/media 即插即用型存储设备的挂载点自动在这个目录下创建。
如USB盘系统自动挂在后,会在这个目录下产生一个目录;
类似cdrom的目录
/mnt 存放挂载存储设备的挂载目录,如cdrom等目录
/opt 表示可选的意思,有些软件包也会被安装在此,也就是自定义软件包,
比如OpenOffice,或者一些我们自己编译的软件包,也可安装此处。
/proc 操作系统运行时,进程(正在运行的程序)信息及内核信息(比如CPU、硬盘分区、内存信息等)存放在此。
/proc目录是伪装的文件系统proc的挂载目录,proc并不是真正的文件系统
/root linux超级权限用户root的家目录
/sbin 大多是涉及系统管理的命令的存放,只有超级权限用户root才可执行命令存放,普通用户无权限执行此目录下的命令
与 /usr/sbin; /usr/X11R6/sbin; usr/local/sbin 目录相似
(sbin,只有root权限才能执行)
/tmp 临时文件目录,有时用户运行程序的时候,会产生临时文件。
/var/tmp目录和此目录相似
/usr 系统存放程序的目录,如命令、帮助文件等。这个目录下有很多的文件和目录。
大部分Linux发行版提供的软件包都安装在此,涉及服务器的配置文件就安装在/ect中。
/usr/share/fonts 字体目录
/usr/share/man 或 /usr/share/doc 帮助目录
/usr/bin 或 /usr/local/bin 或 /usr/X11R6/bin 普通用户可执行文件目录
/usr/sbin 或 /usr/local/sbin 或 /usr/X11R6/sbin 超级权限用户root可执行命令存放目录
/usr/include 程序头文件存放目录
/var (vary)此目录经常变动
/var/log 用来存放系统日志
/var/www 用来定义Apache服务器站点存放
/var/lib 用来存放一些库文件,如MySQL的,以及MySQL数据库的存放地。
4、基本命令
--查看帮助 *** --help *** --?
--查看详细帮助 man ***
--登录 login
--退出窗口 exit
--关机 shutdown
--重启 reboot
--初始化 init (run level -/etc/inittab),0-6看第六部分的g
--进入根目录 cd /
--回上层目录 cd ..
--相对路径 cd dev
--绝对路径 cd /dev
--查用户名 whoami
--查当前目录 pwd
--列出当前目录内容 ls
-l(树详细显示目录内容)
-m(横列显示目录内容,是屏幕长度显示)
-a(列出全部文件,包括隐藏文件)
-S(以文档大小排序)
--创建目录 mkdir dname
--删除目录 rmdir dname
rm -r *** -(递归删除该目录下所有内容,询问每个准备删除的文件)
rm -rf ***-(强制删除该目录下所有内容,不询问)
--创建空白文件 touch ***
(ps:从技术的角度来讲,linux的文件后缀名没有任何意义)
--复制 cp
cp -r **1 **2 (复制1到2中)
--移动 mv
mv -t **1 **2 (把2移动到1中)
--编辑文本 vi [文件名]
--查看文本 cat 由第一行开始显示文本内容
tac 从最后一行显示,可以看出 tac 是 cat 的倒着写
more 一页一页的显示文档内容
less 与 more 类似,可以往前翻页
head 只看头几行
-N(数字,可根据行数显示)
tail 只看后几行
-N(数字,可根据行数显示)
nl 显示的时候,顺序输出行号
od 以二进制位的方式读取档案内容
--查找文本 find [路径][查找类型][搜索文件名]
如查找rc.local find /etc -name *.local
--查找命令信息及其位置 whereis 命令
如 whereis ls
--查看环境变量 echo $SHELL
如 echo $PATH (分大小写:分隔符是:,windows是echo %path%;)
--链接 ln
如 ln joe.txt a (硬链接,如同复制一个新文件,joe.txt删除后,a还存在)
a是链接的名称,a和joe.txt同步,然后a的内容和joe.txt一样
joe.txt改变,a也跟着变
如 ln -s joe.txt b (软链接,如同创建一个快捷方式,joe.txt删除后,b不存在)
--wc 统计指定文本文件的行数、字数、字符数
--grep(很常用) 在指定的文本文件中查找指定的字符串
grep 字符串 文件名
--col 见管道..
--------------------
----信息显示命令----
--------------------
--date 显示和设置日期
--stat 显示指定文件的相关信息
--who、w 显示在线登录用户
--whoami 显示用户自己的身份
--id 显示当前用户的id信息
--hostname 显示主机名称
--uname 显示操作系统信息
--dmesg 显示系统启动信息
--du 显示指定的文件(目录)已使用的磁盘空间
--df 显示文件系统磁盘空间的使用情况
--free 显示当前内存和交换空间的使用情况
--fdisk -l 显示磁盘信息
--locale 显示当前语言环境
5、挂载点(mount 设备目录 挂载目录)
--访问设备 (那设备当成一个文件,和另外一个文件夹进行绑定)
--例如挂载光驱:步骤 [cd /mnt]---[mkdir cdr]---[mount /dev/cdrom /mnt/cdr]---[cd cdr]--OK!直接访问光驱内容
--卸载挂载设备(umount /dev/cdrom)--注意必须先退出挂载目录,否则出现"device is busy"错误.
6、startup-shutdown(linux启动流程)
--A、boot sequence(important) linux启动过程
a. load bios(hardware information)
b. read MBR's config to find out the OS
(MBR--Master Boot Record,硬盘第一个物理扇区,柱面0、磁头0、扇区1,包含主引导程序和硬盘分区表)
c. load the kernel of the OS
(加载为kernel核心的OS)
d. init process starts...
(启动linux第一个进程init)
e. execute /etc/rc.d/sysinit
(执行系统最重要的配置文件,后台启用进程)
(rc.d--run command)
f. start other modules(stc/modules.conf)
(开启各种模块,如内存管理模块、硬盘管理模块)
g. execute the run level scripts
(系统启动是分层次的,根据情况执行,每个层次之间没关系)
0 - 系统停机状态
1 - 单用户工作状态 root
2 - 多用户状态(没有NFS)
3 - 多用户状态(有NFS)
NFS - Network File System 网络文件系统,联网系统
4 - 系统未使用,留给用户
5 - 图形界面
6 - 系统正常关闭并重新启动
如:cd /etc -- 有rc0.d、rc1.d、rc2.d、rc3.d、rc4.d、rc5.d等多个文件夹,保存着各个层次执行的进程文件
h. execute /etc/rc.d/rc.local (重要)
(保存其它进程脚本,如tomcat自动启动,要修改此配置文件)
i. execute /bin/login
(登录界面)
j. shell started...
7、vi 文本编辑器
--两种模式:命令模式 编辑模式
--vi [文件名]
(切换到编辑模式)
a append-光标后添加
i insert-光标前插入
o open-另起一行编辑
esc (切换回命令模式)
:w 存盘
:wq 存盘退出
:q 退出
:q! 不存盘退出
dd 删除其中一行
dw 删除一个单词
(sudo gedit 文本 常用linux下的文本编辑器,比vi好用)
8、用户设置
--切换用户(switch user) su username
小技巧:直接exit切换
--添加用户 useradd username [-g] [组名](分配到某个用户组)
(创建后会自动在/home目录下创建该新用户的文件夹,如/home/username)
--设置密码 passwd username
--cd /etc
--查看用户信息 more password
如新增的用户信息:username:x:500:500::/home/username:/bin/bash
第一个数字,代表用户组,当添加用户没有指定用户组时,系统会创建一个和用户ID一样的组ID;
第二个数字:用户ID号;
用户的目录是/home/username;
用户的SHELL是/bin/bash
(命令--->SHELL[解释命令]--->kenrel内核)
SHELL有多种类型,如csh、bash(常用)、bsh、ksh、sh(最原始)
--添加用户组 groupadd groupname
--查看用户组信息 more group
--删除用户组 groupdel groupname
--修改用户 usermod [-g] [组名] [用户名]
--删除用户 userdel username
然后把/home的文件夹删除了 rm -rf 文件夹
9、权限file privilege
--linux把文件的权限分成四种:r:read w:write x:execute -:none
如:-rw-r--r--
lrwxrwxrwx
drwxr-xr-x
drwxr-xr-x
第一个数字'-'代表文件,其余是文件夹,后9位分为3组,每组有四种权限设置rwx-
第一位表示文件所有者
第二位表示和所有者在同一用户组的用户
第三位表示不在同一用户组的用户权限
--设置权限 (随意应用,灵活组合!)
1、普通用法
--添加权限 [chmod +x 文件]
如:-rw-r--r-- ---> -rwxr-xr-x
--删除权限 [chmod -x 文件]
如:-rwxr-xr-x ---> -rw-r--r--
--给自己添加权限 [chmod ?+x 文件]
如此类推,组--g,其他人--o
如:chmod u+x -rw-r--r-- ---> -rwxr--r--
chmod g+x -rw-r--r-- ---> -rw-r-xr--
chmod o+x -rw-r--r-- ---> -rw-r--r-x
2、专业用法 chmod 755/777
--原理,八进制转二进制
如755,111 101 101, rwx r-x r-x
777,111 111 111, rwx rwx rwx
--修改所有者权限 chown (change owner)
如:chown 原来文件 file1 的所有者是 root,改成joe的
chown joe file1
10、管道(把上一个命令执行的结果交给下一个命令)
--使用方法:
命令1|命令2|命令3......|命令n
--使用举例
--$ls -Rl /etc | more
(如 ls -Rl /etc (在控制台模式下,无法返回前面过去的信息),因此需要管道执行该查询,实现分页的工作, ls -Rl /etc | more)
--$cat /etc/passwd | wc
(显示文件结果,再数数有多少行)
--$cat /etc/passwd | grep lrj
(显示文件结果,再查找包含lrj的行)
--#dmesg | grep eth0
(显示系统启动的信息,再查找包含eth0的行--真正含义,检查网卡执行信息是否正常)
--$man bash | col -b > bash.txt
语 法:col [-bfx][-l]
补充说明:在许多UNIX说明文件里,都有RLF控制字符。当我们运用shell特殊字符">"和">>",把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col指令则能有效滤除这些控制字符。
参 数:
-b 过滤掉所有的控制字符,包括RLF和HRLF。
-f 滤除RLF字符,但允许将HRLF字符呈现出来。
-x 以多个空格字符来表示跳格字符。
-l 预设的内存缓冲区有128列,您可以自行指定缓冲区的大小。
--$ls -l | grep "^d"
(用正则表达式筛选出目录列表中 头字母为'd' 的内容--目录)(^是正则表达式开头部分)
--$ls -l * | grep "^-" | wc -l
(列出目录列表中 头字符为'-'的内容--文件,并统计显示的行数wc -l)
11、其他命令
--wall(warning all) 通知所有人
a.命令替换
如 wall `date`、 cd 'pwd'、mkbootdisk $(uname -r)
b.重定向
重定向输出:
如 ls > cmd.txt ,把文件写到cmd.txt,不输出在控制台
ls >> cmd.txt ,把文件追加写到cmd.txt
重定向输入:
如 wall > cmd.txt,把文本内容发给所有人
12、修改系统的默认系统级别
常用3和5
3 - 多用户状态(有NFS)
NFS - Network File System 网络文件系统,联网系统
5 - 图形界面
PS.设置用户权限: sudo chmod 777 目录
4表示读,2表示写,1表示执行.
第一位表示文件所有者,第二位表示和所有者在同一用户组的用户,第三位表示不在同一用户组的用户权限.
755表示文件所有者可读写,执行.
第二位5表示与所有者在同一用户组的可读,可执行,不可写.
第三位5表示其它组可读,可执行,不可写. 转载于Joewalker在本人空间也有详细说明
6. 应用stata:将log(wage)对educ进行简单回归,并得到回归系数?
1.生成变量工资的对数lwage,使用命令 gen lwage=log(wage)
2.回归:reg lwage educ
7. hansen检验 指令是什么 stata
stata命令大全
********* 面板数据计量分析与软件实现 *********
说明:以下do文件相当一部分内容来自于中山大学连玉君STATA教程,感谢他的贡献。本人做了一定的修改与筛选。
*----------面板数据模型
* 1.静态面板模型:FE 和RE
* 2.模型选择:FE vs POLS, RE vs POLS, FE vs RE (pols混合最小二乘估计)
* 3.异方差、序列相关和截面相关检验
* 4.动态面板模型(DID-GMM,SYS-GMM)
* 5.面板随机前沿模型
* 6.面板协整分析(FMOLS,DOLS)
*** 说明:1-5均用STATA软件实现, 6用GAUSS软件实现。
* 生产效率分析(尤其指TFP):数据包络分析(DEA)与随机前沿分析(SFA)
***
说明:DEA由DEAP2.1软件实现,SFA由Frontier4.1实现,尤其后者,侧重于比较C-D与Translog生产函数,一步法与两步法的区别。常应用于地区经济差异、FDI溢出效应(Spillovers
Effect)、工业行业效率状况等。
* 空间计量分析:SLM模型与SEM模型
*说明:STATA与Matlab结合使用。常应用于空间溢出效应(R&D)、财政分权、地方政府公共行为等。
* ---------------------------------
* -------- 一、常用的数据处理与作图 -----------
* ---------------------------------
* 指定面板格式
xtset id year (id为截面名称,year为时间名称)
xtdes /*数据特征*/
xtsum logy h /*数据统计特征*/
sum logy h /*数据统计特征*/
*添加标签或更改变量名
label var h "人力资本"
rename h hum
*排序
sort id year /*是以STATA面板数据格式出现*/
sort year id /*是以DEA格式出现*/
*删除个别年份或省份
drop if year<1992
drop if id==2 /*注意用==*/
*如何得到连续year或id编号(当完成上述操作时,year或id就不连续,为形成panel格式,需要用egen命令)
egen year_new=group(year)
xtset id year_new
**保留变量或保留观测值
keep inv /*删除变量*/
**或
keep if year==2000
**排序
sort id year /*是以STATA面板数据格式出现
sort year id /*是以DEA格式出现
**长数据和宽数据的转换
*长>>>宽数据
reshape wide logy,i(id) j(year)
*宽>>>长数据
reshape logy,i(id) j(year)
**追加数据(用于面板数据和时间序列)
xtset id year
*或者
xtdes
tsappend,add(5) /表示在每个省份再追加5年,用于面板数据/
tsset
*或者
tsdes
.tsappend,add(8) /表示追加8年,用于时间序列/
*方差分解,比如三个变量Y,X,Z都是面板格式的数据,且满足Y=X+Z,求方差var(Y),协方差Cov(X,Y)和Cov(Z,Y)
bysort year:corr Y X Z,cov
**生产虚拟变量
*生成年份虚拟变量
tab year,gen(yr)
*生成省份虚拟变量
tab id,gen(dum)
**生成滞后项和差分项
xtset id year
gen ylag=l.y /*产生一阶滞后项),同样可产生二阶滞后项*/
gen ylag2=L2.y
gen dy=D.y /*产生差分项*/
*求出各省2000年以前的open inv的平均增长率
collapse (mean) open inv if year<2000,by(id)
变量排序,当变量太多,按规律排列。可用命令
aorder
或者
order fdi open insti
*-----------------
* 二、静态面板模型
*-----------------
*--------- 简介 -----------
* 面板数据的结构(兼具截面资料和时间序列资料的特征)
use product.dta, clear
browse
xtset id year
xtdes
* ---------------------------------
* -------- 固定效应模型 -----------
* ---------------------------------
* 实质上就是在传统的线性回归模型中加入 N-1 个虚拟变量,
* 使得每个截面都有自己的截距项,
* 截距项的不同反映了个体的某些不随时间改变的特征
*
* 例如: lny = a_i + b1*lnK + b2*lnL + e_it
* 考虑中国29个省份的C-D生产函数
*******-------画图------*
*散点图+线性拟合直线
twoway (scatter logy h) (lfit logy h)
*散点图+二次拟合曲线
twoway (scatter logy h) (qfit logy h)
*散点图+线性拟合直线+置信区间
twoway (scatter logy h) (lfit logy h) (lfitci logy h)
*按不同个体画出散点图和拟合线,可以以做出fe vs re的初判断*
twoway (scatter logy h if id<4) (lfit logy h if id<4) (lfit logy h if
id==1) (lfit logy h if id==2) (lfit logy h if id==3)
*按不同个体画散点图,so beautiful!!!*
graph twoway scatter logy h if id==1 || scatter logy h if id==2,msymbol(Sh)
|| scatter logy h if id==3,msymbol(T) || scatter logy h if id==4,msymbol(d) || ,
legend(position(11) ring(0) label(1 "北京") label(2 "天津") label(3 "河北") label(4
"山西"))
**每个省份logy与h的散点图,并将各个图形合并
twoway scatter logy h,by(id) ylabel(,format(%3.0f))
xlabel(,format(%3.0f))
*每个个体的时间趋势图*
xtline h if id<11,overlay legend(on)
* 一个例子:中国29个省份的C-D生产函数的估计
tab id, gen(dum)
list
* 回归分析
reg logy logk logl dum*,
est store m_ols
xtreg logy logk logl, fe
est store m_fe
est table m_ols m_fe, b(%6.3f) star(0.1 0.05 0.01)
* Wald 检验
test logk=logl=0
test logk=logl
* stata的估计方法解析
* 目的:如果截面的个数非常多,那么采用虚拟变量的方式运算量过大
* 因此,要寻求合理的方式去除掉个体效应
* 因为,我们关注的是 x 的系数,而非每个截面的截距项
* 处理方法:
*
* y_it = u_i + x_it*b + e_it (1)
* ym_i = u_i + xm_i*b + em_i (2) 组内平均
* ym = um + xm*b + em (3) 样本平均
* (1) - (2), 可得:
* (y_it - ym_i) = (x_it - xm_i)*b + (e_it - em_i) (4) /*within estimator*/ *
(4)+(3), 可得:
* (y_it-ym_i+ym) = um + (x_it-xm_i+xm)*b + (e_it-em_i+em)
* 可重新表示为:
* Y_it = a_0 + X_it*b + E_it
* 对该模型执行 OLS 估计,即可得到 b 的无偏估计量
**stata后台操作,揭开fe估计的神秘面纱!!!
egen y_meanw = mean(logy), by(id) /*个体内部平均*/
egen y_mean = mean(logy) /*样本平均*/
egen k_meanw = mean(logk), by(id)
egen k_mean = mean(logk)
egen l_meanw = mean(logl), by(id)
egen l_mean = mean(logl)
gen dyw = logy - y_meanw
gen dkw = logk - k_meanw
gen dlw=logl-l_meanw
reg dyw dkw dlw,nocons
est store m_stata
gen dy = logy - y_meanw + y_mean
gen dk = logk - k_meanw +k_mean
gen dl=logl-l_meanw+l_mean
reg dy dk dl
est store m_stata
est table m_*, b(%6.3f) star(0.1 0.05 0.01)
* 解读 xtreg,fe 的估计结果
xtreg logy h inv gov open,fe
*-- R^2
* y_it = a_0 + x_it*b_o + e_it (1) pooled OLS
* y_it = u_i + x_it*b_w + e_it (2) within estimator
* ym_i = a_0 + xm_i*b_b + em_i (3) between estimator
*
* --> R-sq: within 模型(2)对应的R2,是一个真正意义上的R2
* --> R-sq: between corr{xm_i*b_w,ym_i}^2
* --> R-sq: overall corr{x_it*b_w,y_it}^2
*
*-- F(4,373) = 855.93检验除常数项外其他解释变量的联合显著性
*
*
*-- corr(u_i, Xb) = -0.2347
*
*-- sigma_u, sigma_e, rho
* rho = sigma_u^2 / (sigma_u^2 + sigma_e^2)
dis e(sigma_u)^2 / (e(sigma_u)^2 + e(sigma_e)^2)
*
* 个体效应是否显著?
* F(28, 373) = 338.86 H0: a1 = a2 = a3 = a4 = a29
* Prob > F = 0.0000 表明,固定效应高度显著
*---如何得到调整后的 R2,即 adj-R2 ?
ereturn list
reg logy h inv gov open dum*
*---拟合值和残差
* y_it = u_i + x_it*b + e_it
* predict newvar, [option]
/*
xb xb, fitted values; the default
stdp calculate standard error of the fitted values
ue u_i + e_it, the combined residual
xbu xb + u_i, prediction including effect
u u_i, the fixed- or random-error component
e e_it, the overall error component */
xtreg logy logk logl, fe
predict y_hat
predict a , u
predict res,e
predict cres, ue
gen ares = a + res
list ares cres in 1/10
* ---------------------------------
* ---------- 随机效应模型 ---------
* ---------------------------------
* y_it = x_it*b + (a_i + u_it)
* = x_it*b + v_it
* 基本思想:将随机干扰项分成两种
* 一种是不随时间改变的,即个体效应 a_i
* 另一种是随时间改变的,即通常意义上的干扰项 u_it
* 估计方法:FGLS
* Var(v_it) = sigma_a^2 + sigma_u^2
* Cov(v_it,v_is) = sigma_a^2
* Cov(v_it,v_js) = 0
* 利用Pooled OLS,Within Estimator, Between Estimator
* 可以估计出sigma_a^2和sigma_u^2,进而采用GLS或FGLS
* Re估计量是Fe估计量和Be估计量的加权平均
* yr_it = y_it - theta*ym_i
* xr_it = x_it - theta*xm_i
* theta = 1 - sigma_u / sqrt[(T*sigma_a^2 + sigma_u^2)]
* 解读 xtreg,re 的估计结果
use product.dta, clear
xtreg logy logk logl, re
*-- R2
* --> R-sq: within corr{(x_it-xm_i)*b_r, y_it-ym_i}^2
* --> R-sq: between corr{xm_i*b_r,ym_i}^2
* --> R-sq: overall corr{x_it*b_r,y_it}^2
* 上述R2都不是真正意义上的R2,因为Re模型采用的是GLS估计。
*
* rho = sigma_u^2 / (sigma_u^2 + sigma_e^2)
dis e(sigma_u)^2 / (e(sigma_u)^2 + e(sigma_e)^2)
*
* corr(u_i, X) = 0 (assumed)
* 这是随机效应模型的一个最重要,也限制该模型应用的一个重要假设
* 然而,采用固定效应模型,我们可以粗略估计出corr(u_i, X)
xtreg market invest stock, fe
*
* Wald chi2(2) = 10962.50 Prob> chi2 = 0.0000
*-------- 时间效应、模型的筛选和常见问题
*---------目录--------
* 7.2.1 时间效应(双向固定(随机)效应模型)
* 7.2.2 模型的筛选
* 7.2.3 面板数据常见问题
* 7.2.4 面板数据的转换
* ----------------------------------
* ------------时间效应--------------
* ----------------------------------
* 单向固定效应模型
* y_it = u_i + x_it*b + e_it
* 双向固定效应模型
* y_it = u_i + f_t + x_it*b + e_it
qui tab year, gen(yr)
drop yr1
xtreg logy logk logl yr*, fe
* 随机效应模型中的时间效应
xtreg logy logk logl yr*, fe
* ---------------------------------
* ----------- 模型的筛选 ----------
* ---------------------------------
* 固定效应模型还是Pooled OLS?
xtreg logy logk logl yr*, fe /*Wald 检验*/
qui tab id, gen(dum) /*LR检验*/
reg logy logk logl /*POLS*/
est store m_ols
reg logy logk logl dum*,nocons
est store m_fe
lrtest m_ols m_fe
est table m_*, b(%6.3f) star(0.1 0.05 0.01)
* RE vs Pooled OLS?
* H0: Var(u) = 0
* 方法一:B-P 检验
xtreg logy logk logl, re
xttest0
* FE vs RE?
* y_it = u_i + x_it*b + e_it
*--- Hausman 检验 ---
* 基本思想:如果 Corr(u_i,x_it) = 0, Fe 和 Re 都是一致的,但Re更有效
* 如果 Corr(u_i,x_it)!= 0, Fe 仍然有效,但Re是有偏的
* 基本步骤
***情形1:huasman为正数
xtreg logy logk logl, fe
est store m_fe
xtreg logy logk logl, re
est store m_re
hausman m_fe m_re
*** 情形2:
qui xtreg logy h inv gov open,fe
est store fe
qui xtreg logy h inv gov open,re
est store re
hausman fe re
* Hausman 检验值为负怎么办?
* 通常是因为RE模型的基本假设 Corr(x,u_i)=0 无法得到满足
* 检验过程中两个模型的方差-协方差矩阵都采用Fe模型的
hausman fe re, sigmaless
* 两个模型的方差-协方差矩阵都采用Re模型的
hausman fe re, sigmamore
*== 为何有些变量会被drop掉?
use nlswork.dta, clear
tsset idcode year
xtreg ln_wage hours tenure ttl_exp, fe /*正常执行*/
* 产生种族虚拟变量
tab race, gen(dum_race)
xtreg ln_wage hours tenure ttl_exp dum_race2 dum_race3, fe
* 为何 dum_race2 和 dum_race3 会被 dropped ?
* 固定效应模型的设定:y_it = u_i + x_it*b + e_it (1)
* 由于个体效应 u_i 不随时间改变,
* 因此若 x_it 包含了任何不随时间改变的变量,
* 都会与 u_i 构成多重共线性,Stata会自动删除之。
*******异方差、序列相关和截面相关问题
* ---------------- 简 介 -------------
* y_it = x_it*b + u_i + e_it
*
* 由于面板数据同时兼顾了截面数据和时间序列的特征,
* 所以异方差和序列相关必然会存在于面板数据中;
* 同时,由于面板数据中每个截面(公司、个人、国家、地区)之间还可能存在内在的联系, * 所以,截面相关性也是一个需要考虑的问题。
*
* 此前的分析依赖三个假设条件:
* (1) Var[e_it] = sigma^2 同方差假设
* (2) Corr[e_it, e_it-s] = 0 序列无关假设
* (3) Corr[e_it, e_jt] = 0 截面不相关假设
*
* 当这三个假设无法得到满足时,便分别出现 异方差、序列相关和截面相关问题; * 我们一方面要采用各种方法来检验这些假设是否得到了满足;
* 另一方面,也要在这些假设无法满足时寻求合理的估计方法。
* ---------------- 假设检验 -------------
*== 组间异方差检验(截面数据的特征)
* Var(e_i) = sigma_i^2
* Fe 模型
xtreg logy logk logl, fe
xttest3
* Re 模型
* Re本身已经较大程度的考虑了异方差问题,主要体现在sigma_u^2上
*== 序列相关检验
* Fe 模型
* xtserial Wooldridge(2002),若无序列相关,则一阶差分后残差相关系数应为-0.5
xtserial logy logk logl
xtserial logy logk logl, output
* Re 模型
xtreg logy logk logl, re
xttest1 /*提供多个统计检验量*/
*== 截面相关检验
* xttest2命令 H0: 所有截面残差的相关系数都相等
xtreg logy logk logl, fe
xttest2
* 由于检验过程中执行了SUE估计,所以要求T>N
xtreg logy logk logl if id<6, fe
xttest2
* xtcsd 命令(提供了三种检验方法)
xtreg logy logk logl, fe
xtcsd , pesaran /*Pesaran(2004)*/
xtcsd , friedman /*Friedman(1937)*/
xtreg logy logk logl, re
xtcsd , pesaran
* ----------------- 估计方法 ---------------------
*== 异方差稳健型估计
xtreg logy h inv gov open, fe robust
est store fe_rb
xtreg logy h inv gov open, fe robust
est store fe
* 结果对比
esttab fe_rb fe, b(%6.3f) se(%6.3f) mtitle(fe_rb fe)
*== 序列相关估计
* 一阶自相关 xtregar, fe/re
* 模型: y_it = u_i + x_it*b + v_it (1)
* v_it = rho*v_it-1 + z_it (2)
xtregar logy h inv gov open, fe
est store fe_ar1
xtregar logy h inv gov open,fe lbi /*Baltagi-Wu LBI test*/
8. 为什么用stata做的面板数据回归显著性高,但一取ln(y)/ln(l.y),就没有显著性了呢
受异方差的影响,我替别人做这类的数据分析蛮多的