Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #### RFM analysis #####
- library(dplyr)
- # filter to only United Kingdom
- data <- data[data$Country == "United Kingdom", ]
- data$PxQ <- data$Quantity * data$UnitPrice
- data$Recency <- difftime(as.Date(max(data$InvoiceDate)), as.Date(data$InvoiceDate), units = "days")
- RFMresult <- data %>%
- select(InvoiceNo, CustomerID, Recency, PxQ) %>%
- group_by(CustomerID) %>%
- summarise(Recency = min(Recency), Frequency = n_distinct(InvoiceNo), Monetary = sum(PxQ)/n_distinct(InvoiceNo))
- RFMresult$Recency <- as.integer(RFMresult$Recency)
Add Comment
Please, Sign In to add comment