77范文网 - 专业文章范例文档资料分享平台

stata基础命令

来源:网络收集 时间:2020-04-14 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

display 命令

display “1+1” 输出为1+1 display 1+1 输出为2

set mem设置内存

set mem 500m,perm 设置内存为500m set matsize 500 设置matsize为500 query memory 查看内存设置

保留和删除变量 keep & drop

drop crcd repttype 删除crcd repttype

keep stkcd stknme nindcd nnindcd 保留stkcd stknme nindcd nindcd (注意命令的大小写)

save保存stata格式的数据

save “D:\\Teach课件\\STATA\\data\\CG_Co.dta “ 新建文件名 save “D:\\Teach课件\\STATA\\data\\CG_Co.dta ”,replace 重置已有文件

use&insheet using

use 打开dta文件,insheet using打开csv文件

gen生成的新的变量 日

gen tdate=date(accper,\ 产生一个tdate变量用来存放从accper变量中提取的年月format tdate %d 设置tdate为整数型变量

gen year=year(tdate) 提取tdate里面的年份存为year变量 gen month=month(tdate) 提取tdate里面的月份存为month变量

if条件句&tab离散变量的频率

keep if month==12 如保留变量month等于12的数据(注意双等号) tab year 画出变量year的离散频率

纵向添加数据 append

use TRD_Year2011.dta,clear 打开2011的数据文件

append using TRD_Year2012.dta 向2011的数据文件中纵向加入2012的数据文件 *注意2012内的文件变数量与变数名必须相同,若不同,用keep或drop 保留或删除

merge文件合并

use TRD_Year2011_2012.dta,clear 打开该数据文件 sort stkcd year

save TRD_Year2011_2012.dta,replace

排列一下要合并文件内的数据顺序stkcd和year均为变量名

排列后重新储存该数据文件

use FS_Combas.dta,clear sort stkcd year

打开要合并的数据文件

同样排列一下要合并的数据顺序

合并该文件(FS_Combas)和上一文件(TRD_Year2011_2012)内的stkcd和year两个变量

merge 1:1 stkcd year using TRD_Year2011_2012.dta

save bas_TRD,replace 排列后要记得储存

do文件用法(这个练习一下,别考试的时候慌了,没保存考试成绩就没了哦) 将字符型转换成数字型或相反 destring & tostring

tostring year, gen(yearstr) 新建一个变量yearstr用来储存转换为字符形的

year destring yearstr, gen(yearnum) 新建一个变量yearnum用来储存转换为字符形

的 year br yearstr yearnum 用列表形式查看变量yearstr和yearnum

压缩数据空间 compress

gen new=1

新建一个等于1的变量new

查看变量new的数据类型(为double双精度型长度为8bytes)

压缩变量new

des new compress new

des new

1bytes) 存储类型

?

再次查看new的数据类型(为byte字符型长度为

%9.0g:一般格式

– 共占九位(右起),不指定小数点位。

? %-9.0g:一般格式

– 共占九位(左起),,不指定小数点位。

? %9.2f:固定格式

– 共占九位,指定小数点后面保留两位。

? .7e

– 科学计数法,共10位,E后面占7位。

list a001000000 in 1/8 列出 a001000000里的个数据 format a001000000 .0g format a001000000 %-20.2f

取a001000000中所有数据的后20位数

取a001000000中所有数据的20位数其中小数点要取后两位

确定样本期间

keep if year>=2006

生成哑变量

gen duality=0

建立变量duality并且等于0

取已打开文件内的的所有变量year大于等于2006的样本

replace duality=1 if y1001b==1 若变量y1001b等于1则duality等于1(这样变量duality

不等于1 便等于0,因此它是哑变量)

保存命令的结果 return

sum top1,d 建立top1的概括统计量(d的意思是详细的显示出来) return list gen top1_d2=0

建立的统计量会保存在r()里,这个语句可查看所有的统计量

建立哑变量top1_d2并设为0

如果top1大于s统计量的50百分位并且top1不为空的话,将top1_d2置1

replace top1_d2=1 if top1>r(p50) & top1!=.

tab top1_d2 显示top1_d2的离散频率

从字符变量里提取信息 substr:

ex)生成行业变量:

capture drop indu 删除变量indu(capture是为了让dofil

e继续执行,没有特殊含义) gen indu=substr(nindcd,2,4) 从nindcd字符串的第二位开始提取4

位字符,将提取的字符存在名为indu的变量内 replace indu=substr(nindcd,1,2) if indu==\ 如果indu等于大

写的C那么indu的值为nindcd里面的第1位到第2位

tab nindcd 查看nindcd tab indu

egen为gen的拓展

by year,sort: egen topmedian=median(top1) 建立一个变量名为topmedian的变

量用来存放top1的中值并按year排序

生成分类变量 autocode & xtile:

gen topone_categ1=autocode(top1,10,0,1) 从top1里面取大于0小于1的10个数据,

存在topone_categ1里面 xtile topone_categ2=top1, nquantiles(10)

排序变量 sort & gsort:

sort yclsprc sort year yclsprc gsort +yclsprc

从小到大排序yclsprc 从小到大排序year和yclsprc 从小到大排序 yclsprc

从小到大排序 year 从大到小排序 yclsprc 排序

建立变量indu_num1来存放每组indu的序号(这里year和indu的顺序换一下的话,indu_num1就变成了每组year的序号)

将top1里面的数据按个数分为10组,并存在 topone_categ2里

查看indu

gsort +year –yclsprc gsort year indu –ROA

by year indu ,sort:gen indu_num1=_n

by year indu ,sort:gen indu_num2=_N br year indu ROA indu_num1 indu_num2

删除重复值:

sort stkcd year

排序

建立变量indu_num2来存放每组indu的总个数

用列表显示 year indu ROA indu_num1 indu_num2

drop if stkcd==stkcd[_n-1] & year==year[_n-1]

计算业绩波动

sort stkcd year

排序

如果stkcd并且year有重复的话删除

gen roa_l1=ROA[_n-1] if stkcd==stkcd[_n-1]

如果stkcd的值与上一个栏相同,那么将该上一栏重复值对应的ROA值存入新建变量roa_|1

如果stkcd的值与上两栏相同,那么将该上两栏重复值对应的ROA值存入新建变量roa_|1

gen roa_l2=ROA[_n-2] if stkcd==stkcd[_n-2]

egen roasd=rowsd(roa_l1 roa_l2 ROA

检查数据是否有异常 sum

sum ROA ROE EPS TOPINQ MB top1 sep inddir lev duality size state sum ROA ROE EPS TOPINQ MB top1 sep inddir lev duality size state,d

处理异常值

winsor ROA, gen(ROA1) h(10) winsor ROA, gen(ROA2) p(0.01)

winsor ROA, gen(ROA3) p(0.01) highonly sum ROA1 ROA2 ROA3,d

新建一个ROA1来储存处理后的ROA

将 (roa_l1)( roa_l2)(

ROA)的方差存在roasd里面

这是help对p(),h()一类的描述,注意gen()是必须的,并且p()内的值必须在0到0.5之间,h()内的值必须大于1但要小于检测到错误值数量的一半,也就是之前sum检测到的错误值数量。

筛选样本、交待选择过程

gen n=0

新建变量n等于0

将所有indu内部等于大写I的值对应的n都设为1

replace n=1 if indu==\

egen dum=rmiss(ROA ROE EPS TOPINQ MB top1 sep inddir lev duality size state) dum表示以上这些变量的同一行中缺失值的个数 replace n=2 if dum!=0 tab year n

如果缺失值不为0那么将n置2 按年份显示n的值 按indu来显示n的值

tab indu n

贴标签

label data \股权结构与公司业绩\label var ROA \资产收益率\

log 文件开启,关闭,储存 描述统计

sum top1

就是在变量后面附上说明

top1的统计量

top1统计量的详细显示 top1和state的统计量

已打开文件内所有数据的统计量 2010年的top1的统计量

按year的顺序排练top1的统计量

sum top1,d sum top1 state summarize _all

sum top1 if year==2010 by year,sort: sum top1 by state,sort: sum top1

按state的顺序排列top1的统计量

&表示且,and;|表示或,or;==代示恒等于,!=代示不等于 离散变量的频率统计

tab state

显示state的离散表格

显示year为2012的state的离散表格 按year的顺序显示state的离散表格

显示top1和state的离散表格并显示纵列的频率 显示top1和state的离散表格并显示横排的频率

tab state if year==2010 by year, sort: tab state tab state top1_d,col tab state top1_d,row

报告分位数及其置信区间 centile

centile

显示已打开文件内部所有变量的置信空间和百分位 显示top1的置信空间和百分位

centile top1

centile top1, centile(5 50 95) 显示top1第5个百分位,第50个百分位和第95个百分位的

置信空间 centile top1, centile(20(10)90) 显示top1第20个,第30个,第40个。。。。第90个百分

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库stata基础命令在线全文阅读。

stata基础命令.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/938567.html(转载请注明文章来源)
上一篇:4 热力学基础
下一篇:2017作文题汇总
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: