我試圖像這樣的錶轉換:擴大柱
# A tibble: 10 x 2
user_id pred
<int> <fctr>
1 27 electronics
2 27 home
3 38 health
4 60 electronics
5 60 beauty
6 92 home
7 92 electronics
8 106 health
9 117 home
10 117 women
一個看起來像這樣:
# A tibble: 6 x 3
user_id pred_1 pred_2
<dbl> <chr> <chr>
1 27 electronics home
2 38 health NA
3 60 electronics beauty
4 92 home electronics
5 106 health NA
6 117 home women
即行每user_id
和pred
列的擴展到pred_1
,pred_2
等任何想法?
UPDATE
最初的問題得到了解決。追問:
使用tidyr::spread
方法,是有辦法帽group_size
到N
,這樣,當蔓延,它需要在最N
值各組?
或者使用data.table'庫的開發人員版本(data.table); dcast(setDT(df),user_id〜rowid(user_id))' –
謝謝大家,但我真的不知道這是如何重複的另一個問題。如果有的話,這是暴露'tidyr :: spread'的功能的更簡潔的方法 –
這裏的解決方案是相同的。所有的解決方案都有幾十種類似的解決方案,其中很多都由同一用戶發佈。你可以檢查他們[這裏](http://stackoverflow.com/search?q=user%3A3732271+1%3A.N+dcast)和[這裏](http://stackoverflow.com/search?q =用戶%3A3732271 +行號+點差) –