【发布时间】:2018-09-23 23:24:26
【问题描述】:
我有以下格式的raw panel data,并希望将其重塑为经典的panel data 格式,然后在面板数据回归中使用它。
以数字开头的列名是excel日期格式的时间。重塑数据后,应该有一个公司和时间列以及“变量”列中列出的数据项的列。
来自 R:
dput(head(df.example))
structure(list(Firm = c("ABB LTD N", "Facebook", "Nestle", "ABB LTD N",
"Facebook", "Nestle"), Variable = c("Price", "Price", "Price",
"Market Value", "Market Value", "Market Value"), `32508` = c(110.67,
162500, 14.355, 809735, 9.647, 2223.87), `32538` = c(110.35,
162000, 14.355, 809735, 8.836, 2036.94), `32568` = c(115.29,
16925, 14.355, 809735, 10.556, 2433.36), `32598` = c(130.61,
19175, 14.355, 809735, 11.744, 2707.32), `32628` = c(146.34,
4130, 14.355, 809735, 12.975, 162000)), row.names = c(NA, -6L
), class = c("tbl_df", "tbl", "data.frame"))
我尝试使用 reshape2::melt 和 reshape2::cast 函数来做这件事,但无济于事。我找不到类似的问题。非常感谢。
【问题讨论】:
-
图片显示的格式与您显示的示例不清楚。如果以数字开头的列名是要转换为'long'的列名
gather(df.example, key, val, -Firm, -Variable) -
感谢您的意见。我添加了以下说明:以数字开头的列名是excel日期格式的时间。重塑数据后,应该有一个固定的时间列以及“变量”列中列出的数据项的列。
标签: r panel-data