编程器, 我在构建面板数据集时遇到了一些困难。 我的面板数据集目前具有以下结构:
这里的示例只有T = 2且N = 3.(我的实际数据集大小为T = 6且N = 20 000 000)
面板数据结构1:
Year | ID | Variable_1 | ... | Variable_k |
1 | 1 | A | ... | B |
1 | 2 | C | ... | D |
1 | 3 | E | ... | F |
2 | 1 | G | ... | H |
2 | 2 | I | ... | J |
2 | 3 | K | ... | L |
理想的结构是:
面板数据结构2:
Year | ID | Variable_1 | ... | Variable_k |
1 | 1 | A | ... | B |
2 | 1 | G | ... | H |
1 | 2 | C | ... | D |
2 | 2 | I | ... | J |
1 | 3 | E | ... | F |
2 | 3 | K | ... | L |
此数据结构代表经典的面板数据结构,其中整个时期的年度观察是逐块地为所有个体构建的。
我的问题:对于非常大的数据集(data.frame),是否有任何简单有效的R解决方案可以将数据结构从表1更改为表2。
非常感谢您提前做出的所有回复!!
恩里科
答案 0 :(得分:1)
您可以使用order()
重新排序数据框的行:
df=df[order(df$ID,df$Year),]