数据的三种类型(在stata中以颜色区分)
-
红色:文本(可以按照字母顺序进行排序)type:string(str)字符串
-
一种:纯数字(
stkcd股票代码
)
-
另一种:纯文字(
省份名称、行业名称
)
-
黑色:数字(可以做回归分析)
-
蓝色:数字-文字对应表(虚拟变量)实质上也是数字
1.destring 红转黑(限于第一种红色)
目的:将字符串型的转化为数值型
比如:国泰安下载的数据——
stkcd股票代码
,在stata打开中是红色的,这是我们需要把它转化为黑色数字型
destring stkcd ,replace
2.tostring 黑转红
目的:什么时候适用于这种反向操作?—— 有时候字符串型比数值型更好进行操作,比如date的操作
tostring stkcd,replace
3.encode 红转蓝(限于第二种红色)
比如:将
省份名称、行业名称、股权性质
这种转化为数字-文字对应表
缺点:encode要产生一个新变量
encode equitynature, gen(e1) //将纯文字转为数字-文字对应表
des2 //查看对应关系
labelbook //与以上同理
查看对应关系
4.label define&label value 黑转蓝
目的:把数值型转化为数字-文字对应表
比如:国泰安下载的数据——
两职合一
,在stata中打开已经是数值型1和2,但是我想知道1代表什么,2代表什么,这个时候就可以加数字文字对应表
label define X 1 "同一人" 2 "不同一人" //把1、2分别对应的类型定义为X标签
label value Dual X //将X标签加到变量Dual上
5. 红转黑+黑转蓝
-
国泰安下载的数据——
是否为四大事务所
,在stat中打开是红色“Y”和“N”,如果直接用encode得到的对应表可能并不是我想要的
-
我要得到的类别变量,1表示是,0表示否
*直接用encode红转蓝
encode big4, gen(Big4)
*先红转黑
gen Big4=1 if big4=="Y"
replace Big4=0 if big4=="N"
*黑转蓝 定义自己的对应关系表
label define Big4 1 "是" 0 "否"
label value Big4 Big4
自己尝试用这个代码之后,发现对应变量不是红色了,但变成了蓝色。我开始以为问题已经解决了,但是从实证回归的结果看,实证结果明显和既有的大部分研究不一致。而且实证结果随着控制变量的增减而变化很大,核心解释变量不仅数值变化较大,而且连方向也变了。
于是,一开始我怀疑是我才找的新数据可能有问题,换回以前得出预期结果的数据再跑了一遍代码,发现结果竟然和
list :显示样本的内容,使用方法为:
list in 5//显示第5个样本的内容
list in 1/10 // "/"表示至的关系,显示1到至10的样本内容
list var1 var2 in 1/5 //仅显示var1 var2 这两个变量1至5个样本的内容
describe(des):对变量的具体信息进行描述,使用方法为:
des //默认对文件中所有变量的信息进行显示
xtset stkcd time
xtreg y x1 x2 x3 i.time i.stkcd # 固定时间、企业
xtreg y x1 x2 x3 i.time # 固定时间
xtreg y x1 x2 x3 i.stkcd # 固定企业
xtreg y x1 x2 x3 i.industry # 固定行业
xtreg y x1 x2 x3 ,fe # 固定企业
Stata可以通过将日期数据转换为Stata内部的日期格式,然后进行各种分析。可以使用命令“date”将日期数据转换为Stata日期格式。例如,假设日期数据存储在变量“date”的数据集中,则可以使用以下命令将其转换为Stata日期格式:
gen date_stata = date(date, "YMD")
在上述命令中,“YMD”表示日期数据的格式为年月日。转换后,Stata会将日期数据存储为从1960年1月1日开始的天数。因此,可以在Stata中使用各种内置日期函数进行分析和处理。