我有一個像下面轉換因子變量N個二元變量
id <- c(1,1,1,2,2,2,1,3,4,4)
product <- c("a","b","c","a","d","f","e","f","e","f")
df <- data.frame(id,product)
id product
1 1 a
2 1 b
3 1 c
4 2 a
5 2 d
6 2 f
7 1 e
8 3 f
9 4 e
10 4 f
我想將它轉換爲以下數據幀數據幀一。
id a b c d e f
1 1 1 1 0 1 0
2 1 0 0 1 0 1
3 0 0 0 0 0 1
4 0 0 0 0 1 1
從本質上講,我只需要一個記錄每個ID及記錄應包含取決於產品是否購買或不爲0或1。我使用了model.matrix,但它並沒有通過id進行分組,我得到了與原始數據集相同的10行。
不應該這是在StackOverflow? – Jon
可能是一個http://stackoverflow.com/questions/5890584/how-to-reshape-data-from-long-to-wide-format的重複,但沒有信譽關閉。 – AdamO
@ashkan我不認爲這是一個的副本;這裏的結果是一個關聯矩陣,而不是簡單地將現有的長格式重新排列。 –