次のワイド/乱雑なデータフレームがあるとします。
df1 <- data.frame(ID = c(1, 2), Gender = c("M","F"),
Q1 = c(1, 5), Q2 = c(2, 6),
Q3 = c(3, 7), Q4 = c(4, 8))
ID Gender Q1 Q2 Q3 Q4
1 M 1 2 3 4
2 F 5 6 7 8
どうすればこのデータフレームに変換できますか:
df2 <- data.frame(ID = c(1, 1, 2, 2), Gender = c("M", "M", "F", "F"),
V1 = c(1, 3, 5, 7), V2 = c(2, 4, 6, 8))
ID Gender V1 V2
1 M 1 2
1 M 3 4
2 F 5 6
2 F 7 8
これを実現できる複数のパッケージと関数 (tidyr、reshape2、reshape 関数など) があることは知っています。それを行う最も簡単な方法と方法はどれですか? 誰かが提供できる助けに本当に感謝します。ありがとう!