假設數據這樣的數擴大列拼合行,每個ID的多個行:通過根據每個ID的行
z <- data.frame(ID = c(1,1,1,2,2,3,4,4),VA=c(1,2,3,1,2,5,7,8),VB=c("a","b","c","a","b","c","b","c"),VC=c(1,2,3,1,2,8,10,12))
ID VA VB VC
1 1 a 1
1 2 b 2
1 3 c 3
2 1 a 1
2 2 b 2
3 5 c 8
4 7 b 10
4 8 c 12
我想塌陷到每個ID 1行,以儘可能多的列我需要支持任何Id中存在的最大數量的原始行; (在本實施例3點的行爲ID = 1):
ID VA1 VA2 VA3 VB1 VB2 VB3 VC
1 1 2 3 a b c 2.0
2 1 2 a b NA NA 1.5
3 5 NA NA c NA NA 8.0
4 7 8 NA b c NA 15.0
另外,還要注意如何一些列(VA,VB)可被 「展平」 和其他人(VC)可以被聚集。
我不想將任何單元格的值轉換爲列名稱,因爲這些值可能變化過大。但是任何給定ID的行數都會很小,所以我認爲這將是一個理想的展平方法。
正確的 - 感謝 – johnjps111