如何在Stata中合并和复制观察和变量?

时间:2017-10-21 22:18:08

标签: stata panel-data

我需要将我的数据集转换为面板数据集,但我无法在Stata帮助和Google中找到任何方法。我的数据如下:

[A] [B] [C] [D] [E]

[1] [1] [0] [10] [12]

[2] [0] [0] [13] [14]

[3] [1] [1] [15] [17]

A是学生ID,D和E是两年不同的考试成绩。所以,我需要数据看起来像这样:

[A] [B] [C] [(D和E)]

[(D)1] [1] [0] [10]

[(E)1] [1] [0] [12]

[(D)2] [0] [0] [13]

[(E)2] [0] [0] [14]

[(D)3] [1] [1] [15]

[(E)3] [1] [1] [17]

1 个答案:

答案 0 :(得分:0)

浏览数据管理手册[D]或https://www.stata.com/manuals/d.pdf的标题,查找相关命令是个不错的主意。这里的一个小问题是选择不当的变量名称 - 至少在您的数据示例中是这样;我们无法判断您是否在真实数据中使用了更明智的名称。然后,您的新数据布局是reshape long的简单应用程序。

clear 
input A  B  C  D  E
1  1  0  10 12
2 0 0 13 14
3 1 1 15 17
end 

rename A id 
rename (D E) (mark2015 mark2016) 

reshape long mark, i(id) j(year) 

list, sepby(id) 

     +--------------------------+
     | id   year   B   C   mark |
     |--------------------------|
  1. |  1   2015   1   0     10 |
  2. |  1   2016   1   0     12 |
     |--------------------------|
  3. |  2   2015   0   0     13 |
  4. |  2   2016   0   0     14 |
     |--------------------------|
  5. |  3   2015   1   1     15 |
  6. |  3   2016   1   1     17 |
     +--------------------------+

时间相关数据的合适变量名称将具有公共前缀和 提供时间的数字后缀,例如mark2015以及2016