1.使用Do-file 便于保存,可重复使用代码。(代码注释记得在代码前加*)
2.变量批量重命名
rename原变量名 重命名变量
(rename净资产收益率*加权*年年报 **)
3.转为面板数据
reshape long 变量1.. ,i(Code)j(year)
4.合并数据
(1)先把所有需要的excel数据转化为dta格式 :save将导入数据的路径后缀改为dta,replace,框选代码按ctrl+D运行。复制以上代码,只需修改路径中的文件名,便可重复操作。
(2)一对一:merge1:1 code year using 路径,nogen
多对一(比如某个code的成立日期在每个年份都一样):mergem:1 code year using 路径,nogen
5.基础运算
(1)加减乘除、平方、取对数(把stata当计算器):display7+8、display7*8、display7^2、displayln(7)与displaylog(7)等价,di是display 简写
(2)对数据集进行运算:调用自带数据库sysuseauto,clear
只保留price一个变量keepprice
gen a=b+c,gen是基础运算,egen包含的函数更复杂
取对数:genln变量=ln(变量)
均值:egenmeanprice=mean (price)
标准差:egen sdprice=sd (price)
中位数:egenmedprice=median (price)
egen minprice=min (price) egen maxprice=max (price)对行进行操作egenrowmax1=rowmax (price meanprice)只对某一些满足条件的数据进行运算genadd1=mpg+trunk if trunk == 1
6.处理重复值
unique 变量1变量2…看是否有重复值看变量是不是每一个都是唯一的:unique变量结果:Numberof unique values of 变量 is 74 Number of records is 76所以可知有两个重复duplicates找到重复值,跟tag命令,可将重复样本标注出来:duplicatestag 变量,gen(tag1);跟list命令可将重复样本单列出来:duplicateslist make 剔除重复值:duplicatesdrop 变量,force(force为强制执行)
7.将字符串改为数值型
1)encodeCode,gen(code)2)destringcode,replace数值型变为字符串:tostringcode,replace