我使用data.table重塑數據。R data.table重塑數據
library(data.table)
market <- data.table(
stkcd=c(1,2),
type =c(1,0),
roa2013=c(2,3),
roa2014=c(4,5),
lev2013=c(6,7),
lev2016=c(8,9))
market
# stkcd type roa2013 roa2014 lev2013 lev2016
# 1: 1 1 2 4 6 8
# 2: 2 0 3 5 7 9
melt(market,
measure.vars = patterns("^roa", "^lev"),
variable.name = "year",
value.name = c("roa","lev"))
# stkcd type year roa lev
# 1: 1 1 1 2 6
# 2: 2 0 1 3 7
# 3: 1 1 2 4 8
# 4: 2 0 2 5 9
這就是最終數據的樣子。
# stkcd type year roa lev
# 1 1 1 2013 2 6
# 2 1 1 2014 4 NA
# 3 1 1 2016 NA 8
# 4 2 0 2013 3 7
# 5 2 0 2014 5 NA
# 6 2 0 2016 NA 9
有沒有人有任何好的方法呢? 謝謝。
對於命名的「年「的值,請參閱[在融化使用模式之後將'變量'列的數值表示轉換爲原始字符串](https://stackoverflow.com/questions/41883573/convert-numeric-representation-of-variable-column-to-original -string-以下)。 – Henrik
謝謝。我會嘗試重塑{統計數據}。 – Cheng