欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

stata学习笔记(一):stata软件入门

程序员文章站 2024-03-25 18:29:34
...

一、文件扩展名

数据文件 .dta

命令文件.do

程序文件.ado

二、不同统计软件的对比

 

stata学习笔记(一):stata软件入门

三、使用wbopendata(世界银行公开数据)模块获取数据,减轻数据下载管理的工作量

 

例1:wbopendata获得“每百人手机订购量“指标的元数据并制作地图

. wbopendata, language (en -English) indicator (it.cel.sets.p2) long clear latest

. use Mobile, clear
. spmap it cel sets p2 using "world-c.dta", id(id)

四、解决线性代数问题

例2:

stata学习笔记(一):stata软件入门

1 //‚线性变换可以用矩阵的形式表示,即x=Sy,y=Qz, 则x=S*Q*z.其中x,y,z•为列向量
2 mat S=(2,0,1\-2,3,2\4,1,5)
3 mat Q=(-3,1,0\2,0,1\0,-1,3)
4 mat b1=S*Q
5 mat l b1 //下面用方程形式表示出来
6 dis "x1="b1[1,1] "*z1+"b1[1,2] "*z2+"b1[1,3] "*z3"
7 dis "x2="b1[2,1] "*z1+"b1[2,2] "*z2+"b1[2,3] "*z3"
8 dis "x3="b1[3,1] "*z1+"b1[3,2] "*z2+"b1[3,3] "*z3"
9 //求解矩阵,先试探系数矩阵是否可逆 
10 mat A=(2,1,-1\2,1,0\1,-1,1)p
11 dis det(A) //行列式不为零,可以求逆
12 mat b=(1,-1,3\4,3,2)
13 mat X=b*inv(A)
14 mat l X

五、自学途径

  • help+命令(全英文看醉了)
  • 人大经济论坛(中文)
  • statalist(英文)
  • UCLA提供的网络教程
  • 连玉君博客
  • 参考教材

stata学习笔记(一):stata软件入门

 

六、基本操作

  • 打开数据
.sysuse auto,clear  //使用sysuse打开系统示例数据,使用clear命令来清除已打开的数据
.use D:\Stata12.0\ado\base\a\auto //使用use命令来打开用户自己的数据
.cd”D:\abc“  //打开其他位置的数据文件,或者使用file--open来打开指定数据
.webuse nlswork,clear  //webuse 命令默认从http://www.stata-press.com/data 这一路径获取数据,欲获取其他网络数据则只能使用use + 完整的网络地址来获取.
.use http://fmwww.bc.edu/RePEc/bocode/c/CardKrueger1994.dta, clear /* 从波士顿大学的Stata 数据库中获取数据*/
  • 查看数据

describe:描述数据库变量类型、属性


. describe

Contains data from F:\stata13(windows安装版)\ado\base/a/auto.dta
  obs:            74                          1978 Automobile Data
 vars:            12                          13 Apr 2013 17:45
 size:         3,182                          (_dta has notes)
-------------------------------------------------------------------------------
              storage   display    value
variable name   type    format     label      variable label
-------------------------------------------------------------------------------
make            str18   %-18s                 Make and Model
price           int     %8.0gc                Price
mpg             int     %8.0g                 Mileage (mpg)
rep78           int     %8.0g                 Repair Record 1978
headroom        float   %6.1f                 Headroom (in.)
trunk           int     %8.0g                 Trunk space (cu. ft.)
weight          int     %8.0gc                Weight (lbs.)
length          int     %8.0g                 Length (in.)
turn            int     %8.0g                 Turn Circle (ft.)
displacement    int     %8.0g                 Displacement (cu. in.)
gear_ratio      float   %6.2f                 Gear Ratio
foreign         byte    %8.0g      origin     Car type
-------------------------------------------------------------------------------
Sorted by:  foreign

. 

.

 

list:陈列相应的变量和数据

1 sysuse auto
2
3 list /* 陈列文件的全部数据*/
4 list make price mpg rep78 /* 陈列变量make price mpg rep78 的数据*/
5 list make price mpg rep78 in 1/10 /* 陈列变量make price mpg rep78 的前10 个数据*/
6 list make price mpg rep78 if mpg>20 /* 陈列变量make price mpg rep78 的满足mpg 大于20 的数据*/
7
8 list make price mpg rep78 ,table /* 强制按图标形式陈列变量。list 陈列数据的默认形式依赖屏幕窗口的宽度, 9 list make price mpg rep78 ,display /* 强制按display 陈列变量*/
10 list make price mpg rep78 ,table header /* 陈列时带变量名,实际上这也是list 默认的形式*/
11 list make price mpg rep78 ,table noheader /* 陈列时不带变量名*/
12
13 list make price mpg rep78 ,table header(4) /* 每四次观测为一组陈列每一组陈列时都有变量名*/
14 list make price mpg rep78 in 1/10,clean /* 陈列时不带表格线*/
15 list make price mpg rep78 in 1/10,divider /* 陈列时每列数据间有竖线*/
16 list make price mpg rep78 in 1/20, divider separator(10)
17 /* 陈列时每列数据间有竖线,并且每10 行有横线,list 的默认值为5*/
18
19 sort headroom /* 数据按headroom 从小到大的顺序排列*/
20 list make price mpg rep78 in 1/20, sepby(headroom) /* 陈列数据时,当headroom 的数据改变时,有横线隔开*/
21 list make price mpg rep78 ,table sum mean N /* 陈列数据后,计算变量观测值的和,平均值和总样本数*/
22 list make price mpg rep78 , sum(price mpg rep78) labvar(make) /* 陈列数据后,计算变量price mpg rep78 的观测值的和*/
23
24 by rep78, sort: list make price mpg rep78
25 /* 数据先按rep78 从小到大的顺序排列,再按rep78 的值陈列make price mpg rep78 的数据*/
26 by rep78, sort: list make price mpg rep78, constant /* 和上述相同,陈列时,单独列出rep78 的值*/

 

直接使用browse命令打开数据库浏览

.browse

stata学习笔记(一):stata软件入门

scatter:绘制散点图

. scatter price weight

stata学习笔记(一):stata软件入门

  • 保存数据
. save auto1,replace/*另存为auto1.dta, 如果已经有这个文件名的文件,那么覆盖保存*/
file auto1.dta saved

 

  • 生成数据

generate:生成一列新数据

.g num = _n  //generate或gen都可以

用list num可查看新生成的变量


. list num

     +-----+
     | num |
     |-----|
  1. |   1 |
  2. |   2 |
  3. |   3 |
  4. |   4 |
  5. |   5 |
     |-----|
  6. |   6 |
  7. |   7 |
  8. |   8 |
  9. |   9 |
 10. |  10 |
     |-----|
 11. |  11 |
 12. |  12 |
 13. |  13 |
 14. |  14 |
 15. |  15 |
     |-----|
 16. |  16 |
 17. |  17 |
 18. |  18 |
  • 修改数据
.replace  //+条件语句:剔除缺失值、异常值、批量修改数据

.edit  //慎用,避免无意间修改了原始数据

注意:原始数据不允许随便修改

  • 描述统计

summarize:求变量的个数、平均值、标准差、最小值和最大值

. su  //summarize或sum都可以

    Variable |       Obs        Mean    Std. Dev.       Min        Max
-------------+--------------------------------------------------------
        make |         0
       price |        74    6165.257    2949.496       3291      15906
         mpg |        74     21.2973    5.785503         12         41
       rep78 |        69    3.405797    .9899323          1          5
    headroom |        74    2.993243    .8459948        1.5          5
-------------+--------------------------------------------------------
       trunk |        74    13.75676    4.277404          5         23
      weight |        74    3019.459    777.1936       1760       4840
      length |        74    187.9324    22.26634        142        233
        turn |        74    39.64865    4.399354         31         51
displacement |        74    197.2973    91.83722         79        425
-------------+--------------------------------------------------------
  gear_ratio |        74    3.014865    .4562871       2.19       3.89
     foreign |        74    .2972973    .4601885          0          1
相关标签: stata