2016-07-05 52 views
0

我正尝试使用在博客here的R中为RFM建模提及的代码。但是,将数据框分组为“购买”和“不买”尚未得到明确解释。因此,当我尝试执行功能getPercentages时,出现如下错误:RFM分析 - 在R.中使用ddply Missing列

未找到对象“购买”。

我想添加一个买入列如下: df$Buy <- ifelse(df$Frequency > 1, 1, 0) 执行函数前。 我不知道这是否是正确的方式来获取值。 我的头dfgetDataframe

ID  Date Amount Recency Frequency Monetary 
1207779 2016-06-22 2112.00  8  20 1576.7725 
2455590 2016-06-26 1064.00  4  16 1074.8400 
2660337 2016-06-21 1870.00  9  20 1616.1700 
257997 2016-06-22 616.00  8  22 684.8968 
963883 2016-06-27 703.12  3  16 626.1125 
1124489 2016-06-21 594.15  9  18 752.2011 
+0

你的问题不明确。请张贴错误代码。 – user4349490

+0

错误是:eval(expr,envir,enclos)中的错误:找不到对象'Buy'。这是因为“购买”列不存在。我无法弄清楚我应该怎样生成购买专栏。博客的链接在此提及代码(http://www.dataapple.net/wp-content/uploads/2013/12/CLV_rcode.txt)。我的代码调用函数:dfProbRF < - getPercentages(dftry,c(“新近”,“频率”)) – Tarak

+0

请发布R代码而不是错误消息。 – user4349490

回答

1

试试这个:

Buy<-rep(0,nrow(dftry)) 
dftry<-cbind(dftry,Buy) 
+0

但在执行getPercentages之后,我的数据框是空的,因为这就是 – Tarak

+0

在功能getPercentages这是过滤标准:“b <-b [b $ Buy == 1,-1]”。你已经定义了购买列'0'值。您必须根据您的要求将某些内容分配到购买列。就像这样:dftry [dftry $ Amount> 1000,] $ Buy <-1 – user4349490