Stata笔记-北京科技大学
STATA实用学习笔记

STATA实⽤学习笔记北京科技⼤学STATA应⽤学习摘录第⼀章 STATA的基本操作⼀、设置内存容set mem 500m, perm⼀、显⽰输⼊内容Display 1Display “clive”⼆、显⽰数据集结构describeDescribe /d三、编辑editEdit四、重命名变量Rename var1 var2五、显⽰数据集内容list/browseList in 1List in 2/10六、数据导⼊:数据⽂件是⽂本类型(.csv)1、insheet: . insheet using “C:\Documents and Settings\Administrator\桌⾯\ST9007\dataset\Fees1.csv”, clear2、内存为空时才可以导⼊数据集,否则会出现(you must start with an empty dataset)(1)清空内存中的所有变量:.drop _all(2)导⼊语句后加⼊“clear”命令。
七、保存⽂件1、save “C:\Documents and Settings\Administrator\桌⾯\ST9007\dataset\Fees1.dta”2、save “C:\Documents and Settings\Administrator\桌⾯\ST9007\dataset\Fees1.dta”, replace ⼋、打开及退出已存⽂件use1、.Use ⽂件路径及⽂件名, clear2、. Drop _all/.exit九、记录命令和输出结果(log)1、开始建⽴记录⽂件:log using "J:\phd\output.log", replace2、暂停记录⽂件:log off3、重新打开记录⽂件:log on4、关闭记录⽂件:log close⼗⼀、创建和保存程序⽂件:(doedit, do)1、打开程序编辑窗⼝:doedit2、写⼊命令3、保存⽂件,.do.4、运⾏命令:.do 程序⽂件路径及⽂件名⼗⼆、多个数据集合并为⼀个数据集(变量和结构相同)纵向合并append insheet using "J:\phd\Fees1.csv", clearsave "J:\phd\Fees1.dta", replaceinsheet using "J:\phd\Fees2.csv", clearappend using "J:\phd\Fees1.dta"save "J:\phd\Fees1.dta", replace⼗三、横向合并,在原数据集基础上加上另外的变量merge1、insheet using "J:\phd\Fees1.csv", clearsort companyid yearendsave "J:\phd\Fees1.dta", replacedescribeinsheet using "J:\phd\Fees6.csv", clearsort companyid yearendmerge companyid yearend using "J:\phd\Fees1.dta"save "J:\phd\Fees1.dta", replacedescribe2、_merge==1 obs. From master data_merge==2 obs. From using data_merge==3 obs. From both master and using data⼗四、帮助⽂件:help1、. Help describe⼗五、描述性统计量1、summarize incorporationyear 单个summarize incorporationyear-big6 连续多个summarize _all or simply summarize 所有2、更详细的统计量summarize incorporationyear, detail3、centilecentile auditfees, centile(0(10)100)centile auditfees, centile(0(5)100)4、tabulate不同类型变量的频数和⽐例tabulate companytypetabulate companytype big6, column 按列计算百分⽐tabulate companytype big6, row 按⾏计算百分⽐tab companytype big6 if companytype<=3, row col 同时按⾏列和条件计算百分⽐5、计算满⾜条件观测的个数count if big6==1count if big6==0 | big6==16、按离散变量排序,对连续变量计算描述性统计量:(1)by companytype, sort: summarize auditfees, detail(2)sort companytypeBy companytype:summarize auditees⼗六、转换变量1、按公司类型将公开发⾏股票公司赋值为1,其他为0gen listed=0replace listed=1 if companytype==2replace listed=1 if companytype==3replace listed=1 if companytype==5replace listed=. if companytype==.⼗七、产⽣新变量genGenerate newvar=表达式⼗⼋、数据类型3、新建变量的过程中定义数据类型●gen str3 gender= "male"●list gender in 1/104、变量所占字节过长●drop gender●gen str30 gender= "male"●browse●describe gender●compress gender5、⽇期数据类型:%d dates, which is a count of the number of days elapsed since January 1, 1960。
(完整版)Stata学习笔记和国贸理论总结

(完整版)Stata学习笔记和国贸理论总结Stata学习笔记⼀、认识数据(⼀)向stata中导⼊txt、csv格式的数据1.这两种数据可以⽤⽂本⽂档打开,新建记事本,然后将相应⽂档拖⼊记事本即可打开数据,复制2.按下stata中的edit按钮,右键选择paste special3.*.xls/*.xlsx数据仅能⽤Excel打开,不可⽤记事本打开,打开后会出现乱码,也不要保存,否则就恢复不了。
逗号分隔的数据常为csv数据。
(⼆)⽹页数据⽹页上的表格只要能选中的,都能复制到excel中;⽹页数据的下载可以通过百度“国家数据”进⾏搜索、下载⼆、Do-file 和log⽂件打开stata后,第⼀步就要do-file,记录步骤和历史记录,⽅便⽇后查看。
Stata处理中保留的三种⽂件:原始数据(*.dta),记录处理步骤(*.do),以及处理的历史记录(*.smcl)。
三、导⼊StataStata不识别带有中⽂的变量,如果导⼊的数据第⼀⾏有中⽂就没法导⼊。
但是对于列来说不会出现这个问题,不分析即可(Stata不分析字符串,红⾊⽂本显⽰;被分析的数据,⿊⾊显⽰);第⼀⾏是英⽂变量名,选择“Treat first row as variable names”在导⼊新数据的时候,需要清空原有数据,clear命令。
导⼊空格分隔数据:复制——Stata中选择edit按钮或输⼊相应命令——右键选择paste special——并选择,确定;导⼊Excel 中数据,复制粘贴即可;逗号分隔数据,选择paste special后点击comma,然后确定。
Stata数据格式为*.dta,导⼊后统⼀使⽤此格式。
四、基本操作(⼏个命令)(⼀)use auto,clear 。
在清空原有数据的同时,导⼊新的auto数据。
(⼆)browse 。
浏览数据。
(三)describe 和list。
查看数据,describe 和list 使⽤list命令能使我们根据⾃⼰的需要选择数据(例如其与in/if语句的结合使⽤)。
(完整版)Stata学习笔记和国贸理论总结

Stata学习笔记一、认识数据(一)向stata中导入txt、csv格式的数据1.这两种数据可以用文本文档打开,新建记事本,然后将相应文档拖入记事本即可打开数据,复制2.按下stata中的edit按钮,右键选择paste special3.*.xls/*.xlsx数据仅能用Excel打开,不可用记事本打开,打开后会出现乱码,也不要保存,否则就恢复不了。
逗号分隔的数据常为csv数据。
(二)网页数据网页上的表格只要能选中的,都能复制到excel中;网页数据的下载可以通过百度“国家数据”进行搜索、下载二、Do-file 和log文件打开stata后,第一步就要do-file,记录步骤和历史记录,方便日后查看。
Stata处理中保留的三种文件:原始数据(*.dta),记录处理步骤(*.do),以及处理的历史记录(*.smcl)。
三、导入StataStata不识别带有中文的变量,如果导入的数据第一行有中文就没法导入。
但是对于列来说不会出现这个问题,不分析即可(Stata不分析字符串,红色文本显示;被分析的数据,黑色显示);第一行是英文变量名,选择“Treat first row as variable names”在导入新数据的时候,需要清空原有数据,clear命令。
导入空格分隔数据:复制——Stata中选择edit按钮或输入相应命令——右键选择paste special——并选择,确定;导入Excel中数据,复制粘贴即可;逗号分隔数据,选择paste special后点击comma,然后确定。
Stata数据格式为*.dta,导入后统一使用此格式。
四、基本操作(几个命令)(一)use auto,clear 。
在清空原有数据的同时,导入新的auto数据。
(二)browse 。
浏览数据。
(三)describe 和list。
查看数据,describe 和list 使用list命令能使我们根据自己的需要选择数据(例如其与in/if语句的结合使用)。
stata笔记要点

1.一般检验假设系数为0,t比较大则拒绝假设,认为系数不为0.假设系数为0,P比较小则拒绝假设,认为系数不为0.假设方程不显著,F比较大则拒绝假设,认为方程显著。
2.小样本运用OLS进行估计的前提条件为:(1)线性假定。
即解释变量与被解释变量之间为线性关系。
这一前提可以通过将非线性转换为线性方程来解决。
(2)严格外生性。
即随机扰动项独立于所有解释变量:与解释变量之间所有时候都是正交关系,随机扰动项期望为0。
(工具变量法解决)(3)不存在严格的多重共线性。
一般在现实数据中不会出现,但是设置过多的虚拟变量时,可能会出现这种现象。
Stata可以自动剔除。
(4)扰动项为球型扰动项,即随即扰动项同方差,无自相关性。
3.大样本估计时,一般要求数据在30个以上就可以称为大样本了。
大样本的前提是(1)线性假定(2)渐进独立的平稳过程(3)前定解释变量,即解释变量与同期的扰动项正交。
(4)E(XiXit)为非退化矩阵。
(5)gt为鞅差分序列,且其协方差矩阵为非退化矩阵。
与小样本相比,其不需要严格的外生性和正太随机扰动项的要求。
4.命令稳健标准差回归:reg y x1 x2 x3, robust 回归系数与OLS一样,但标准差存在差异。
如果认为存在异方差,则使用稳健标准差。
使用稳健标准差可以对大样本进行检验。
只要样本容量足够大,在模型出现异方差的情况下,使用稳健标准差时参数估计、假设检验等均可正常进行,即可以很大程度上消除异方差带来的副作用对单个系数进行检验:test lnq=1线性检验:testnl _b[lnpl]=_b[lnq]^25.如果回归模型为非线性,不方便使用OLS,则可以采取最大似然估计法(MLE),或者非线性最小二乘法(NLS)6.违背经典假设,即存在异方差的情况。
截面数据通常会出现异方差。
因此检验异方差可以:(1)看残差图,但只是直观,可能并不准确。
rvfplot (residual-versus-fitted plot) 与拟合值的散点图rvpplot varname (residual-versus-predictor plot) 与解释变量的散点图扰动项的方差随观测值而变动,表示可能存在异方差。
高级计量经济学讲义(北大CCER)--STATA_NOTE

STATA BASIC COMMANDS(notes for Junsoo Lee)I. BASICclearset memory 80mcd c:cd \work\statainsheet using water.txtsave water.dta* use water.dtalog using water, replacesummarize _alldescribe _allII. MORE on BASICMemoryC:\stata\wstata /k5000C:\stata\wstata /k5000 set matsize 100C:\stata\wstata /k5000 run c:\data\profile.doData filesInfile x1 x2 x3 using test.txt* only text fileInsheet x1 x2 x3 using text.txt* if saved by spreadsheetsave test, replacesave test, appenduse testlistdescribeLog FileLog using test.logLog using test.log, replaceLog using test.log, appendLog closeLog using test.log, noprocBreakCtrl-K Ctrl-breakRegressionRegress y x1 x2Predict yhatRegress y x1 x2, robustvce* variance-covariancevce, corrmatrix v = get(vce)coeff & predgent asif = _b[const] + _b[ed]*ed + _b[tenure]*tenure testregress y x1 x2test x1 = x2* b1 = b2joint restrictionstest 2*(x1+x2) = 3*x3test x4+x5 = 0, accum* two joint restrictionslr testregress y x1 x2lrtest, saving(0)regress y x1 x2 x3lrtestnon-linear restrictionsregress y x1 x2 x3eq one: 3*_b[x2]^2 = _b[x3]eq two: _b[x3] / _b[x2] = 2testnl one twoBy region: regress y x1 x2By foreign: regress y x1 x2Graph y x1 x2 if foreign ==0, correct(.1) symbol(oi)Graph y x1 x2 if foreign ==1, correct(.1) symbol(oi)t-testttest mpg, by(foreign)* Ho: diff = 0 where foreign is a dummy variableCii 97 24 6* n=97 mean=24 std=6 95 c.i.ttest 97 24 6 22* test Ho: mu = 22ListList x1 if x2 > 20List x1 – x5List x1 x2 if x4 > 10 | (x5>3 & x6 > 10)* ~ = not equal & and | or ~ not >= greater than or equal SortSort mpgCreating new variablesgen lx1 = ln(x1)* if same variable is uses, use “replace”.replace x1 = x1 / 1000Gen x3 = 1.05 * x1 if foreign == 0Replace x3 = 1.20 * x1 if foreign == 1ClearDrop _allMoreSet more offSet more onDescriptive statistics SummarizeSum if mpg > 20Sum if foreign == 0Sum x1, detailBy region: summarize x1 x2 CountCount if x == 1Count if y = float(1.1)* precision issueTabulateTab foreignTab x2 foreignTab x2 foreign, chi2* Pearson chi-square test (df=n-1) CorrelateCorr x1 x2Corr x1 x2 if foreign == 0GraphGraph x1 x2Sort foreignGraph x1 x2, by(foreign) total* three graphs; 0, 1, totalTutorial introTutorial graphicsTutorial survivalTutorial logitLong Line* semi-colon should be used.#delimit;summarize x1 x2if foreign == 1;gen x3 = x1 + x2;#delimit crDo fileDo myjobDo myjob.doDo myjob, nostop* don’t stop even with errorsBatch Jobs* at DOSc:\stata\wstata /b do bigjob.doADO filesWhich fitType c:\stata\ado\f\fit.adoType c:\stata\ado\f\fit.hlpThree places to putOfficial C:\stata\adoPersonal C:\adoCurrent .Global S_ADO “C\stata\ado;d:\ado;.”* to refine pathsmacro list S_ADOCDCd d:Cd \work\dataCd “\work\detailed data”Lags and LeadsGen xlag1 = x[_n-1]Gen xlead1 = x[_n+1]Procedures (Program)Program define helloDisplay “hi there”EndDo helloScoreProbit y x1, x2, score(u)* will be stored in UPoisson Regression (Example provided by Todd)#delimit ;* Poisson regression (Ex. 5.3, Greene, p. 208); * For Junsoo Lee;input id y x ;1 6 1.5;2 7 1.8;3 4 1.8;4 10 2.0;5 10 1.3;6 6 1.6;7 4 1.2;8 7 1.9;9 2 1.8;10 3 1.0;11 6 1.4;12 5 0.5;13 3 0.8;14 3 1.1;15 4 0.7;end;list;* Poisson regression;poisson y x ;Poisson MLE (Example provided by David/Todd)clearinsheet using c:\temp\poisson_data.txtlog using c:\temp\poisson_output.log, replace/* this is the "canned" routine that estimates the poisson regression */ poisson y x/* this maximizes lnL directly, using logged factorial of y */program define poisreg1args lnf thetaquietly replace `lnf' = -exp(`theta') + $ML_y1*(`theta') - lnfact($ML_y1) endml model lf poisreg1 (y=x)ml maximize/* this maximizes lnL directly, using the logged gamma function */program define poisreg2version 6args lnf thetaquietly replace `lnf' = -exp(`theta') + $ML_y1*(`theta') - lngamma($ML_y1 + 1)endml model lf poisreg2 (y=x)ml maximizePanel Estimationclearset memory 40mset more offset matsize 350log using panel.log, replaceuse panel.dta, cleartsset state yearregress y x1 x2 state2-state51 yr82-yr95xtivreg y l1.y x1 x2 yr82-yr95 (l.y = l2.y), i(state) fextivreg y l1.y x1 x2 yr82-yr95 (l.y = l2.y), i(state) fdxtivreg y l1.y x1 x2 yr82-yr95 (l.y = l2.y), i(state) re ec2slsxtabond y x1 x2 yr82-yr95, lags(1)xtabond y x1 x2 yr82-yr95, lags(1) twostep log closeOn-line HelpH weibullHelp for ^brier^。
Stata学习笔记和国贸理论总结

Stata学习笔记一、认识数据(一)向stata中导入txt、csv格式得数据1.这两种数据可以用文本文档打开,新建记事本,然后将相应文档拖入记事本即可打开数据,复制2.按下stata中得edit按钮,右键选择paste special3.*、xls/*、xlsx数据仅能用Excel打开,不可用记事本打开,打开后会出现乱码,也不要保存,否则就恢复不了。
逗号分隔得数据常为csv数据。
闡贄鲜饩狈酾阑。
(二)网页数据网页上得表格只要能选中得,都能复制到excel中;网页数据得下载可以通过百度“国家数据”进行搜索、下载恒險谅枫諷为誣。
二、Do-file 与log文件打开stata后,第一步就要do-file,记录步骤与历史记录,方便日后查瞧。
Stata处理中保留得三种文件:原始数据(*、dta),记录处理步骤(*、do),以及处理得历史记录(*、smcl)。
鍥糶斷轻浆辆钓。
三、导入StataStata不识别带有中文得变量,如果导入得数据第一行有中文就没法导入。
但就是对于列来说不会出现这个问题,不分析即可(Stata不分析字符串,红色文本显示;被分析得数据,黑色显示);第一行就是英文变量名,选择“Treat first row as variable names”馀紋锭箩谅绾纭。
在导入新数据得时候,需要清空原有数据,clear命令。
导入空格分隔数据:复制——Stata中选择edit按钮或输入相应命令——右键选择paste special——并选择,确定;导入Excel中数据,复制粘贴即可艰鍤悵铧恥郑顎。
;逗号分隔数据,选择paste special后点击comma,然后确定。
Stata数据格式为*、dta,导入后统一使用此格式。
四、基本操作(几个命令)(一)use auto,clear 。
在清空原有数据得同时,导入新得auto数据。
(二)browse 。
浏览数据。
(三)describe 与list。
查瞧数据,describe 与list 使用list命令能使我们根据自己得需要选择数据(例如其与in/if语句得结合使用)。
stata学习笔记

经济数据的特点与类型。
1、横截面数据:多个经济个体的变量在同一时间点上的取值,如2012年中国各省的GDP2、时间数列数据:指的是某个经济个体的变量在不同时点上的取值,如1978-2012年山东省每年的GDP3、面板数据:多个经济个体的变量在不同时点上的取值,如1978-2012年中国各省的GDP 小样本OLS(最小二乘法):单一方程线性回归最常见方法条件:解释变量与扰动项正交、扰动项无自相关、同方差。
拟合优度:衡量线性回归模型对样本数据的拟合程度(R2),越高说明模型拟合程度越好。
单系数T检验:对回归方程扰动项的具体概率进行假设显著性水平进行检验F检验:整个回归方程是否显著STATA操作简介:如果数据中包含1949-10-01或1949/10/01的时间变量,导入stata后可能会被视为字符串,因此对于日度数据,可以使用命令gen newvar=date(varname,YMD),将其转换为整数日期变量,其中YMD说明原始数据的格式为年月日,如果原始数据的格式为月日年则使用MDY;对于月度数据则gen newvar=monthly(varname,YM)。
.describe:数据的概貌.drop keep:删除和保留.su:统计特征Pwcorr:变量之间相关系数Star(.05):5%显著性水平gen:产生g intc=log(tc):取自然对数. reg:OLS回归.Vce:协方差矩阵reg。
,noc表示在进行回归时不要常数项大样本OLS:只要求解释变量与同期的扰动项正交即可Robust:稳健标准误,如果存在异方差,则应使用稳健标准误最大似然估计法:如果回归方程存在非线性,则使用最大似然估计法(MLE )或非线性最小二乘法(NLS )三类在大样本下渐进等价的统计检验:Wald test LR (似然比检验) LM操作步骤如下:sysuse auto (调用数据集)Hist mpg ,normal (画变量mpg 的直方图,并与正态密度比较)直方图显示,变量mpg 的分布于正态分布有一定差距。
Stata笔记-北京科技大学

Stata笔记-北京科技大学改颜色edit-preference-general prefernce-classic下面命令框-右键-font-改字号命令cd d:\ 改到d盘(change directory)dir查询d盘有什么sysuse auto 系统自带汽车数据,数据变量(字段)显示在右上角br(owse) 浏览数据(字符型红色,数值型黑色,蓝色-右键-value labels-hide all labels标签隐藏)h(elp) li(st) 告诉你命令怎么用,下面有例子左边双击执行,单击复制到命令框order price mpg(单击右边的变量)order make-foreign 改变变量顺序,从make到foreigng(enerate) new=rep78-trunk 输出新变量(rep78,trunk是字段,可单击选择,"."表示缺省,加减乘除+-*/)list if new==14 (==为等于,=为赋值,可以点击more)li(st) if new2>=14 & new2<24 (按q可以退出,即quit)replace new3=rep78 (输错了替换)drop new new2 new3删除变量list if new>10000list make if new<10000|new>2000 (竖线表示或者,回车上面那个)!=表示不等于左边命令,右键savesave data 文件名为datasysuse autopreservereservesave auto2 保存时不需加后缀,删除时带后缀.dtasort price从小到大gsort price 都可以,比较随意gsort -trunk price (默认加号,为排序) order make new (将new排到第二位) aorder (alphabetic 按字母顺序排序)disp(lay) sin(1) 作为计算器使用ln以e为底----------------3.13---------锐思数据库选择数据-----非金融行业负债表----左边-财务报表-非金融行业合并标识-1合并报表调整标识-1报表类型-q4、信息来源-q4公司类别-20-定期报告信息来源:q4a股股票代码截止日期流动资产合计应收账款总资产流动负债合计负债合计所有者权益合计------非金融行业利润表---前同净利润营业收入excel输出(默认)选择列表签+列名------打开STATA------菜单引入文件clear可清除数据varible name 不识别中文选中第一个import first row as varible names第二个import all data as strings意思是将数据看作字符型(不选) br(ouse)展示数据流动比率=流动资产/流动负债资产负债率=总负债/总资产产权比率=总负债/所有者权益合计mkdir d:\hsy1\mydata 建立文件夹cd d:\hsy1\mydata 基于文件夹dir 显示文件夹save bs 保存数据,名为bs直接运行是双击,显示在框内为单击g(enerate) currrate=Totcurass/Tutcurlia 流动比率(等号后面点右上方variables)显示(8 missing values generated)有八个缺失值g lev=Totlia/Totass 负债率leverageg pright= T otlia/ TotSHE 产权比率porpertysave bs2 另存数据drop 为删除变量clear从内存删掉,不会从硬盘删掉------利润表-----importsave isg incorate= Netprf/ Incmope 利润率=净利润/营业利润save is2----clearuse bs2 打开bs2g year=year( EndDt) 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
改颜色edit-preference-general prefernce-classic下面命令框-右键-font-改字号命令cd d:\ 改到d盘(change directory)dir查询d盘有什么sysuse auto 系统自带汽车数据,数据变量(字段)显示在右上角br(owse) 浏览数据(字符型红色,数值型黑色,蓝色-右键-value labels-hide all labels标签隐藏)h(elp) li(st) 告诉你命令怎么用,下面有例子左边双击执行,单击复制到命令框order price mpg(单击右边的变量)order make-foreign 改变变量顺序,从make到foreigng(enerate) new=rep78-trunk 输出新变量(rep78,trunk是字段,可单击选择,"."表示缺省,加减乘除+-*/)list if new==14 (==为等于,=为赋值,可以点击more)li(st) if new2>=14 & new2<24 (按q可以退出,即quit)replace new3=rep78 (输错了替换)drop new new2 new3删除变量list if new>10000list make if new<10000|new>2000 (竖线表示或者,回车上面那个)!=表示不等于左边命令,右键savesave data 文件名为datasysuse autopreservereservesave auto2 保存时不需加后缀,删除时带后缀.dtasort price从小到大gsort price 都可以,比较随意gsort -trunk price (默认加号,为排序)order make new (将new排到第二位)aorder (alphabetic 按字母顺序排序)disp(lay) sin(1) 作为计算器使用ln以e为底----------------3.13---------锐思数据库选择数据-----非金融行业负债表----左边-财务报表-非金融行业合并标识-1合并报表调整标识-1报表类型-q4、信息来源-q4公司类别-20-定期报告信息来源:q4a股股票代码截止日期流动资产合计应收账款总资产流动负债合计负债合计所有者权益合计------非金融行业利润表---前同净利润营业收入excel输出(默认)选择列表签+列名------打开STATA------菜单引入文件clear可清除数据varible name 不识别中文选中第一个import first row as varible names第二个import all data as strings意思是将数据看作字符型(不选)br(ouse)展示数据流动比率=流动资产/流动负债资产负债率=总负债/总资产产权比率=总负债/所有者权益合计mkdir d:\hsy1\mydata 建立文件夹cd d:\hsy1\mydata 基于文件夹dir 显示文件夹save bs 保存数据,名为bs直接运行是双击,显示在框内为单击g(enerate) currrate=Totcurass/Tutcurlia 流动比率(等号后面点右上方variables)显示(8 missing values generated)有八个缺失值g lev=Totlia/Totass 负债率leverageg pright= Totlia/ TotSHE 产权比率porpertysave bs2 另存数据drop 为删除变量clear从内存删掉,不会从硬盘删掉------利润表-----importsave isg incorate= Netprf/ Incmope 利润率=净利润/营业利润save is2----clearuse bs2 打开bs2g year=year( EndDt) 。
year(EndDt)表示从变量EndDt里把年份取出,如month()g month=month( EndDt)save bs3-----clear. use is2. g year=year( EndDt). g month=month( EndDt). save is3----合并merge横向1对1合并,append纵向合并---merge 1:1 A_Stkcd year using bs3注意后面的两个变量名字在原来两个表里是相同的,将bs3合并到现在(is3)中错误类型variables A_Stkcd year do not uniquely identify observations in the master data而master data指主数据库,using data 从数据库(替换变量名Stked 改成A_Stked)rep A_Stked Stked(替换原数据is3)save is3,replaceclear 清除合并use bs3duplicates report A_Stkcd year 报告重复的变量(两个)显示(surplus为多余的)copies | observations surplus----------+---------------------------1 | 17017 021 | 21 2022 | 110 10523 | 46 44--------------------------------------duplicates drop A_Stkcd year,force 同一公司同一年数据删掉,强制删除save bs4(is,bs都除重就可以合并了)keep if _merge==3(3为完全匹配,1,2不完全匹配)drop if _merge!=3 如果不完全匹配去除. save bsis--------------------------300创业板(最小)002中小板000主板keep if substr( A_Stkcd,1,3)=="300" 筛选,substr()为取字符串函数,从第一位开始取取3位,加引号为字符型summerize Totass 看Totass的各种指标,标准差,最大最小值su Totass,detail 可以看到上下四分位截尾,去掉两端1%左右的值缩尾,将99%以后的数值以99%的数值替代,去除极端值,1%一下同理su Totlia,d(etail)su Accrecv-pright 逐个显示变量的信息corr(elation) Totass Totlia 相关性分析,0.3一下不相关,0.3-0.5低度相关,0.5-0.8中度相关pwcorr Totass Totlia 偏相关pwcorr Totass Totlia Totcurrass,sig star(0.05) 显著性水平significance,小于0.05的标星号,星号在它上面------------导出,------------------------------------3.20----------------------------------reg 因变量(因变量:被解释变量;自变量:解释变量)set linesize 140加宽显示窗格reg price rep78 headroom trunk weight (std. err.=standard error,T值,confidence interval置信区间)P与T反向关系,标准误=T值adjusted r-square调整的r方(自变量越多r方越大)*表示P<10%,>5%**表示P<5%,>1%***表示P<1%DF 自由度,degree of freettest rep78=headroom。
t检验做散点图scatter length price。
命令是scatterline 变量名1 变量名2 折线图hist 变量名1 变量名2。
做直方图histogram 柱状图hist 变量名,freqhist 变量名,addl freq--------------------3.27--------------------将家庭记为househood,个人记为people,收入记为income。
输入命令:egen income_people=mean(income),by(househood)就可以了!egen newvar= ma(y), nomiss t(7)即建立一个新变量,等于跨距为7的y的移动平均数,用较短、未对中的平均数取代起点值和终点值。
g y=year( EndDt) 提取年份. order CompanyCode y 将公司代码排第一列,年份排第二列help reshapereshape wide Incmope- InventoryTurnoverRatio,i( CompanyCode) j( y)一定在i和前面有逗号!. g Accrecv2009mean=( Accrecv2009+ Accrecv2008)/2reshape long .....,----------4.17---------------destring 变量名,replace 使字符型变数值型g y=real(substr( Accper,1,4)) 从字符型取年份,并变成数值型,从左向右取四位. drop Accper. order Stkcd y 按变量1,变量2 排序. keep if y==2000|y==2001. g infee=ln( Tcost) 对Tcost取对数产生infee变量. drop Tcostg brandname=1 if substr( Dadtunit,1,4)=="普华"(4441 missing values generated). replace brand=1 if substr( Dadtunit,1,4)=="德勤"(51 real changes made). drop Dadtunit. g opinion=0 if Audittyp=="标准无保留意见". replace opinion=1 if opinion==. 将缺失值替代为1(214 real changes made)-----------------import excel "D:\Stata\BS_AD8BD666A41_(1)0417\newBS_AD8BD666A41_(1)0417.xls", sheet("BS") firstrow. br. g y=year( _EndDt). drop _EndDt. g inasset=ln( _Totass) 对总资产取对数. g invrec=( _Accrecv +_Invtr)/ _Totassdrop _Accrecv _Invtr _Totass. order _A_Stkcd y. save bssaved. clear. import excel "D:\Stata\BS_AD8BD666A41_(1)0417\newIS_8CBBC6F6EBB_(1)0417.xls", sheet("IS") firstrow. duplicates drop _Stkcd y,force删除重复的Duplicates in terms of _Stkcd y(42 observations deleted). drop if _n<3 删除前两行,_n就是序号的意思(2 observations deleted)merge 1:1 _Stkcd y using bs1variables _Stkcd y do not uniquely identify observations in the using data 合并有重复的,在自子数据库use bs1. duplicates drop _Stkcd y,force 与对母数据库同样操作,都除重后就可以合并了Duplicates in terms of _Stkcd y(42 observations deleted). merge 1:1 _Stkcd y using is2Result # of obs.-----------------------------------------not matched 30from master 12 (_merge==1)from using 18 (_merge==2)matched 5,077 (_merge==3)-----------------------------------------. g len=length( _Stkcd) 对股票代码取长度看看有没有长度为0的就是空的. su len 看看len的情况,summarize 发现有长度为0的Variable | Obs Mean Std. Dev. Min Max -------------+--------------------------------------------------------len | 5131 5.948548 .5532848 0 6. list if len==0. drop if len==0 删掉len=0的(44 observations deleted). drop len 去除len变量Merge之后算ROE=净利润/所有者权益. g roe= _Netprf/ _TotSHE. g list=1 if roe>0 & roe<=0.02 产生哑变量list,若。