暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Stata 数据处理学习笔记(一)

牛谈琴 2020-10-02
6677

1.Stata 基本的数据类型

Stata 有两种数据类型。一种是数值类型,另外一种是文字类型。数值类型的格式有 int float long double,不同的格式能够存储不同大小的数据容量。数值类型可以进行加减乘除的运算。文字变量用 str strL 来表示,其中 strL 用来表示容量比较大的字符变量。

    sysuse auto,clear
    compress


    variable mpg was int now byte
    variable rep78 was int now byte
    variable trunk was int now byte
    variable turn was int now byte
    variable make was str18 now str17
      (370 bytes saved)

     

    2.Stata中的时间变量

      clear all
      set obs 10
      gen date = _n
      format date %tdCY-N-D  //年月日的数据格式

      format 表示格式格式的调整。%td 表示时间 date, 除此之外,还有 月份、星期、季度、半年等形式。具体情形help文件看更加详细的说明。

      3.Stata中的数据导入

      我们通常需要将数据导入到Sata中,根据导入文件的不同有以下一些比较常用的命令。

      3.1导入Excel 文件

        *数据的导入
        cd "E:\stata15\ado\personal\learning"
        import excel using aa.xlsx,firstrow //将第一行作为变量名称储存

        这样就能将 excel 格式的数据导入到Stata 中,在option选项中添加 firstrow 表示将excel 中的第一行设置为 stata 中的变量形式。


        还有其他的说明,在 Stata Manual中有说明。

        3.2导入 csv 数据

          import delimited using bb.csv,encoding("utf-8")

          如果没有encoding("utf-8") 就会出现中文的乱码现象,在导入数据的时候需要及时导入。


          3.滞后期与差分

            gen obs 10
            gen date = _n
            format date %tdCY-N-D
            gen value = _n^2
            tsset date
            gen lvalue = l.value //滞后期
            gen dvalue = d.value // 差分期


            --------------------------------------+
            | date value lvalue dvalue |
            |--------------------------------------|
            1. | 1960-01-02 1 . . |
            2. | 1960-01-03 4 1 3 |
            3. | 1960-01-04 9 4 5 |
            4. | 1960-01-05 16 9 7 |
            5. | 1960-01-06 25 16 9 |
                 +--------------------------------------+


            4.循环 foreach 和 forvalue

            4.1 foreach 循环

            这个是foreach 循环的基本使用方法。

            举一个例子进行说明:

             

              foreach x of numlist 1/3 5 6/10{
                di `x'
              }


              1
              2
              3
              5
              6
              7
              8
              9
              10


              同时也可以对变量进行循环:

                foreach i of varlist _all{
                di `i'
                }


                AMC Concord
                4099
                22
                3
                2.5
                11
                2930
                186
                121
                3.5799999
                0

                将每一个变量的第一个值打印出来。


                4.2 forvalues 的用法

                参看 stata manual 上的相关说明如下:



                  forvalues i = 1/5{
                  di `x'
                  }
                  1
                  2
                  3
                  4
                  5


                  循环的难点在于和宏结合起来使用处理数据,首先需要将单个使用学会,然后在处理数据中慢慢积累。


                  6.其他命令

                  stata 中还有其他的命令需要记忆来处理数据。

                  cond

                  具体的情况可以看相关的介绍说明


                  inlist


                  inrange


                  文章转载自牛谈琴,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                  评论