将关系数据框转换为指示变量
Convert a relational data frame into indicator variables
我有一个包含 2 列的关系数据框,客户和购买。我想要一个数据框,每个不同的客户都有一行,每个产品都有一列,指标变量显示该客户是否购买了该产品。
示例:
df <- data.frame(customer=c("A", "A", "B", "B"), purchase = c("Milk", "Eggs", "Juice", "Milk"))
customer purchase
1 A Milk
2 A Eggs
3 B Juice
4 B Milk
我要:
customer Milk Eggs Juice
1 A 1 1 0
2 B 1 0 1
我们可以使用
library(reshape2)
dcast(df, customer~purchase, length, value.var='purchase')
# customer Eggs Juice Milk
#1 A 1 0 1
#2 B 0 1 1
我有一个包含 2 列的关系数据框,客户和购买。我想要一个数据框,每个不同的客户都有一行,每个产品都有一列,指标变量显示该客户是否购买了该产品。
示例:
df <- data.frame(customer=c("A", "A", "B", "B"), purchase = c("Milk", "Eggs", "Juice", "Milk"))
customer purchase
1 A Milk
2 A Eggs
3 B Juice
4 B Milk
我要:
customer Milk Eggs Juice
1 A 1 1 0
2 B 1 0 1
我们可以使用
library(reshape2)
dcast(df, customer~purchase, length, value.var='purchase')
# customer Eggs Juice Milk
#1 A 1 0 1
#2 B 0 1 1