1

IMF IFS からの四半期ごとの時系列の経済データを持っているので、長い形式にする必要があります。

現在、行は国ごとの変数で、列は時間なので、このようになります。

     country  variable    Q1  Q2 
[1,] "USA"   "inflation" "1" "5"
[2,] "USA"   "GDPPC"     "2" "6"
[3,] "UK"    "inflation" "3" "7"
[4,] "UK"    "GDPPC"     "4" "8"

私はそれを長い形式にする必要があります:

    country  Time  inflation    GDPPC
[1,] "USA"   "Q1" "1"          "2"  
[2,] "USA"   "Q2" "5"          "6"  
[3,] "UK"    "Q1" "3"          "4"  
[4,] "UK"    "Q2" "7"          "8" 

ID 変数と測定変数が両方とも行にある場合、reshape の使用に関するアドバイスを見つけることができませんでした。

4

2 に答える 2

1

パッケージ内ではパーシャルのmelt後に aが続きます。dcastreshape2

d = data.table(country = c("USA","USA","UK","UK"), variable = c("inflation","GDPPC","inflation","GDPPC"),Q1=as.character(1:4),Q2=as.character(5:8))
require(reshape2)
d2 = melt(d, id=c("country", "variable"))
colnames(d2)[3] = "Time" 
rr=dcast(d2, country +Time ~ variable)
rr = rr[order(rr$country,decreasing=T),c(1:2,4,3)]

与えます:

> rr
  country Time inflation GDPPC
3     USA   Q1         1     2
4     USA   Q2         5     6
1      UK   Q1         3     4
2      UK   Q2         7     8
于 2014-02-06T00:11:20.433 に答える