Reputation: 11
I need to convert my data set to a panel dataset, but I couldn't find anything how to do it both in Stata help and Google. My data looks like this:
A is student id and D and E are their test scores in two different years. So, I need the data to look like this:
Upvotes: 0
Views: 1409
Reputation: 37278
It's a good idea to skim the headings of the data management manual, [D] or https://www.stata.com/manuals/d.pdf, to find relevant commands. The immediate small problem here is poorly chosen variable names -- at least in your data example; we can't tell if you're using more sensible names in your real data. Then your new data layout is a simple application of 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 |
+--------------------------+
Suitable variable names for time-dependent data will have a common prefix and
a numeric suffix giving time, say mark
and 2015
and 2016
.
Upvotes: 1