Должен быть простой и элегантный способ сделать это в R с пакетом data.table, но мне трудно понять его. Векторизованные операции предпочтительнее.R: группировать и подсчитывать строки, соответствующие условию, группе по уникальным значениям и таблице преобразования
library(data.table)
d1 <- as.Date("01-13-2013", '%m-%d-%Y')
d2 <- as.Date("12-31-2013", '%m-%d-%Y')
data <- data.frame(Date=sample(seq(d1,d2,1),10), Customer_ID=sample(1:5,20,replace=T), Product=sample(letters[1:5]), Store=sample(c("S1","S2")))
создать
ID Date_Prod_A Times_Purchased_A Date_Prod_C Times_Purchased_C
1 47 01-01-2012 2 - -
2 26 - - 01-17-2012 1
Найти список всех значений для продукта и добавьте две колонки в каждом продукте. Также создайте таблицу, показывающую, сколько разных продуктов отображается для каждого идентификатора.
< таблица -data.table (данные)
Извините, откуда товар product_C? это, возможно, проблема форматирования с вашим текстом? –
Добро пожаловать в stackoverflow. [Воспроизводимые примеры] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) - это путь. Некоторые доказательства усилий от вашего имени обычно считаются вежливыми. – mnel