Stata常用命令集锦【计量经济系列(一)】

文章目录

  • 1.数据集的打开、关闭与保存
    • 1.1 导入Excel数据
    • 1.2 打开dta数据
    • 1.3 关闭数据集
    • 1.4 保存数据
  • 2.stata运算符
    • 2.1 代数运算符
    • 2.2 逻辑运算符
    • 2.3 比较运算符
  • 3. 数据查询
    • 3.1 describe
    • 3.2 list
      • 3.2.1 查看一条数据
      • 3.2.2条件查询
  • 4. 删除数据
    • 4.1 keep
    • 4.2 drop
  • 5. 排序
    • 5.1 sort
    • 5.2 gsort
      • 5.2.1 语法
      • 5.2.2 gsort降序
      • 5.2.3 gsort升序
  • 6. 统计分析摘要summarize
  • 7.生成新变量 gen
  • 8. 修改数据
    • 8.1 修改单个数据
    • 8.2 按条件修改多个数据
  • 9.数据的合并
    • 9.1 纵向合并 append
    • 9.2 横向合并 merge
  • 10.数据重整
    • 10.1 reshape
    • 10.2 多列转一列 stack
    • 10.3 转置 xpose


    ʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞʚʕ̯•͡˔•̯᷅ʔɞ
                 


1.数据集的打开、关闭与保存

1.1 导入Excel数据

 import excel "E:\stata_projects\data\test1.xlsx", sheet("Sheet1") firstrow

从左到右,依次指定Excel文件目录,sheet工作簿,第一行为列名。


1.2 打开dta数据

以acemoglu.dta数据集为例。

打开dta文件类型的数据集,使用use命令。

use "E:\stata_projects\data\acemoglu.dta"

clear表示关闭上一个数据集。

1.3 关闭数据集

如果上一个打开的数据集是被导入的,则需要使用clear将其关闭,才能打开下一个数据集。
clear命令可以单独使用,

clear
use "E:\stata_projects\data\acemoglu.dta"

也可以写成:

use "E:\stata_projects\data\acemoglu.dta", clear

     


1.4 保存数据

使用save加保存的文件名及其目录。

save "E:\stata_projects\data\test1.dta"

这里保存为了stata专有的dta数据文件格式。


2.stata运算符

stata支持的运算符如下:

2.1 代数运算符

符号 描述
+
-
*
/
^ 指数

2.2 逻辑运算符

符号 描述
!
~
| 逻辑或
& 逻辑并

2.3 比较运算符

符号 描述
> 大于
< 小于
== 等于(一个等号时表示赋值)
~=或!= 不等于
>= 大于等于
<= 小于等于

3. 数据查询

3.1 describe

describe用于描述生成内存中的数据集或存储在Stata格式数据集中的数据的摘要。
要获得变量名的紧凑列表,请使用descripe,simple。

语法

describe [varlist] using filename [, file_options]

示例

use "E:\stata_projects\data\acemoglu.dta"
describe

也可以简写为d
     
obs是数据条数,vars是变量个数,12 Mar 2015 20:26是数据文件的修改日期

然后依次是每个变量的:

  • variable name 变量名
  • storage type 存储类型(数据类型),
  • display format 展示格式,
  • value label 变量的值标签,
  • variable label(变量标签)

3.2 list

3.2.1 查看一条数据

如果要查看某条数据
则使用list命令

list

list不加任何参数默认查看所有数据。

在上边五个变量中,查看shortnam变量的数据:

list shortnam

呈现效果:
                    


stata中的变量名可以使用前几个字符的简称,使用简称的前提是该简称能够指代的变量名唯一,否则会发生报错ambiguous abbreviation(模棱两可的缩写)。

如查看logem4变量,因为还存在一个logpgp95变量,,所以简可以写成

list loge

而不能写成

list log

3.2.2条件查询

同时查询shortnam和logem4两个变量,并只要第5个到第10个(总计6个)数据。

指定数据范围使用 in

list s loge in 5/10

                   
第五个到第十个数据中变量logem4大于4.25的。

list s loge in 5/10 if logem4>4.25

                  


4. 删除数据

4.1 keep

keep含义为保留,即,将keep命令指定范围外的数据删除。
如保留logpgp95 > 9的数据。

keep if logpgp95 > 9

             

然后需要恢复刚刚删除的数据(才能便于博客的继续展示):

clearuse "E:\stata_projects\data\acemoglu.dta"

(即 先清除所有变量,重新读取文件)


4.2 drop

删除logem4大于4的为例

drop if logem4>4

           

如果想要删除变量,则只需要drop加变量名,或者keep加想要保留的变量的变量名。


5. 排序

5.1 sort

clear
use "E:\stata_projects\data\acemoglu.dta"sort logpgp95

按照变量 logpgp95 升序(从小到大)排列。

5.2 gsort

5.2.1 语法

gsort按指定变量的升序或降序排列观察值,所以它和sort的不同之处在于,sort只生成升序排列。且得到的数据结构中没有数据类型为字符串类型的变量。

语法

gsort [+|-] varname [[+|-] varname …] [, generate(newvar) mfirst]


5.2.2 gsort降序

gsort -logpgp95

               


5.2.3 gsort升序

gsort +logpgp95

gsort logpgp95

               


6. 统计分析摘要summarize

summarize计算并显示各种单变量摘要统计信息。如果未指定varlist,则会计算数据集中所有变量的汇总统计信息。

语法

summarize [varlist] [if] [in] [weight] [, options]

且最短可缩写为su

summarize

         


查看更为详细的摘要统计信息,则加上可选参数(options),detail

summarize,detail

执行结果如图所示,其中圈出的部分是每个变量的标签,作为输出表格中每个变量的唯一标识。
             


7.生成新变量 gen

gen是generate的简写,用于生成新的变量。如:

gen y1 = sum( logem4 )gen y2 = sqrt(logem4)gen y3 = logem4*2

     


8. 修改数据

       


8.1 修改单个数据

将第11条数据的avexpr改为8。

 replace avexpr = 8 in 11

8.2 按条件修改多个数据

将表格中第2条数据到第20条数据范围内,变量logpgp95大于9.8且小于9.99的数据修改为8为例:

replace logpgp95 = 8 in 2/20 if logpgp95>9.8 & logpgp95<9.99

         


9.数据的合并

9.1 纵向合并 append

数据集test1和数据集test2如下:

                  

                


将两组数据纵向合并,保存为test3.dta。

use test1,clear
append using test2
save test3,replace

  其中append命令是将数据集test2纵向合并到了当前数据集(test1),但是并没有更改任何文件。这个时候使用list命令看到的是:
                  

查看test3

use test3,clear

              


9.2 横向合并 merge

test4
               
test5

                  

  横向排序需要选择一列作为基准列,这里以变量id为例,合并前需要先使两个合并的数据集有着相同的id(值相同,顺序也要相同),这里先使用sort方法进行排序。

use test4,clear
sort id
save test5,replace
use test4,clear
sort id
merge id using test4
save test6

表格合并结果如图所示
          
合并过程会产生标识变量 _merge,为了不影响数据操作过程,通常使用drop _merge将其删除。

drop _merge

10.数据重整

10.1 reshape

stack命令的官方说明文档如下
通过stack命令,可以成功实现如图所示的long数据可wide数据之间的转化。
         
以mywide.dta数据集为例,数据具体如下:
         

将如图所示的wide数据转换为long数据,

命令示例如下:

use mywide
reshape long math economy, i(id name) j(year)

其中i()中的变量名是保持不变的变量名,j()中的变量名是新添加的一列的变量名。
除了指定的不变的变量名之外,只有命名方式为 字符+数字形式的变量名,如economy2003,economy2004才会被合并,且变量名中的数值会作为新的变量的值,而math2003和math2004会变成math,economy2003和economy2004则会变成economy。
不满足这样形式变量名的变量,会保持不变。

处理效果具体如下:
             


沿着上边的命令继续执行,将刚刚得到的long数据再变为wide数据:

只需要将reshape long改为reshape wide,其他部分不变:

reshape wide math economy, i(id name) j(year)

           


10.2 多列转一列 stack

还使用mywide数据集:
             
将数据集中的math2003 economy2003 math2004 economy2004四个变量合并成为一个新的变量,且变量名为x:
最后并删除产生的标识变量_stack:

use mywide
stack math2003 economy2003 math2004 economy2004,into(x) clear
drop _stack

                


10.3 转置 xpose

依然使用mywide.dta数据集:
            
将其转置:

use mywidexpose, clear

转置结果如图所示,可以看到,原来数据类型为字符串类型的变量,在转置后成为了缺失值。因为每个变量中的所有数据必须属于同一数据类型。
        


本次分享就到这里,小啾感谢您的关注与支持!

Stata常用命令集锦【计量经济系列(一)】相关推荐

  1. stata 模型设定专题【计量经济系列(六)】(遗漏变量、无关变量、多重共线性、leverage、虚拟变量、线性插值......)

    stata 模型设定专题[计量经济系列(六)] 文章目录 1. 遗漏变量 与 无关变量 1.1 遗漏变量 1.2无关变量 2. 解释变量的权衡标准 3. 检验函数形式 4. 多重共线性 4.1 检验多 ...

  2. stata 工具变量法【计量经济系列(七)】

    stata 工具变量法[计量经济系列(七)] 文章目录 1. 内生性 2. 工具变量 3. 2SLS (二阶段最小二乘法) 4. 弱工具变量 5. 工具变量外生性的过度识别检验 6. 豪斯曼检验 6. ...

  3. stata 异方差专题【计量经济系列(四)】

    stata 异方差专题[计量经济系列(四)] 文章目录 1. 异方差检验方法 2. 散点图法 3. BP检验 4. 怀特检验 5. FWLS 可行权的最小二乘法 6. 小练习     ʚʕ̯•͡˔•̯ ...

  4. 工具变量法案例【计量经济系列(八)】

    stata 工具变量法案例[计量经济系列(八)] 文章目录 1.数据集 2. 初步回归,发现内生变量 3. 使用工具变量,2SLS回归 4. 检验外生性,过度识别检验 5. 检验 工具变量与内生变量 ...

  5. stata代码命令全集:跟检验do文件、stata常用命令、代码大合集、面板熵值法

     一.常用模型代码整理 1.数据来源: 2.时间跨度:无 3.区域范围:无 4.指标说明: 包含如下模型代码: l OLS模型 l Heckman两阶段模型 l PSM+DID模型 l 固定效应模型( ...

  6. oracle clearing,ORACLE DBA常用命令集锦(2)

    ORACLE DBA常用命令集锦(2)[@more@] 接上篇 ORACLE DBA常用命令集锦(1): sql> revoke create session from scott; 7.gra ...

  7. Elasitcsearch 开发运维常用命令集锦

    Elasitcsearch 集群开发运维常用命令集锦,后面会逐步扩展完善. 早期总结的开发.运维常见命令清单列表如下: 1.干货 | Elasticsearch 运维实战常用命令清单 2.干货 | E ...

  8. Git 常用命令集锦

    文档已储存在 GitHub,这里不再更新校正,请原谅. 远程仓库相关命令 克隆远程仓库:git clone git://github.com/jquery/jquery.git 查看远程仓库:git ...

  9. windows常用命令集锦

    开始→运行→输入的命令集锦 gpedit.msc-----组策略 sndrec32-------录音机 Nslookup-------IP地址侦测器 explorer-------打开资源管理器 lo ...

最新文章

  1. linux异常断电usb驱动丢失,如何修复Linux中损坏的USB驱动器 | MOS86
  2. 小白学python,零基础学Python难不难?
  3. linux弹性网卡,将弹性网卡附加到 ECS 实例上之后如何配置弹性网卡
  4. Java StringBuilder codePointCount()方法与示例
  5. 【OGG】 RAC环境下管理OGG的高可用 (五)
  6. linux 查看磁盘分区,文件系统,使用情况的命令和相关工具介绍,新型linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍.doc...
  7. Python XML读写(xml.etree.ElementTree模块)(转载)
  8. java反编译能拿到源码吗_大牛带你解读Spring源码,编写自定义标签,您能学会吗?
  9. sed,awk,grep教程
  10. matlab 平滑曲线连接_MATLAB数据可视化
  11. edge 临时文件夹 位置_如何更改Microsoft Edge的下载文件夹的位置
  12. 【Python 3.7】分子运动:修改 rw_visual.py,将其中的 plt.scatter() 替换为 plt.plot() 。为 模拟花粉在水滴表面的运动路径
  13. 如何在Hyper-V、Virtual PC等虚拟机中使用USB设备
  14. Fluid Motion by Curl Noise
  15. 完蛋!面试官问我 InnoDB 的物理存储结构!
  16. java项目小组项目总结报告_项目总结报告
  17. android上调试H5小工具
  18. AS3使用,播放声音和加载外部声音文件
  19. 线性代数笔记:逆矩阵及伪逆矩阵,最小二乘估计,最小范数估计
  20. 基于遥感的大蒜种植面积量测

热门文章

  1. hive乱码彻底解决方案全记录
  2. web前端——h标签
  3. vue多个商品选择与列表显示
  4. openCV任意几何形状感兴趣区域(ROI)提取
  5. 如何将XPS转成PDF?XPS转PDF的免费方法
  6. JSP+MySQL校园新闻网站(5)–新闻查看功能开发
  7. matlab中xtem,快速傅里叶变换_蝶形运算_按频率抽取基2-fft算法_MATLAB代码
  8. 视频教程-Cocos2d-x 游戏开发详解-Cocos
  9. 《linux》笔记2
  10. HTML和CSS的学习(1~20节)