我有一个名为sampleframe
的数据框,其中存储了所有的表值。在sampleframe
里面我有id
,month
,sold
列。根据条件计算各列值的平均值
id month SMarch SJanFeb churn
101 1 0.00 0.00 1
101 2 0.00 0.00 1
101 3 0.00 0.00 1
108 2 0.00 6.00 1
103 2 0.00 10.00 1
160 1 0.00 2.00 1
160 2 0.00 3.00 1
160 3 0.50 0.00 0
164 1 0.00 3.00 1
164 2 0.00 6.00 1
我想根据ID
计算过去三个月的平均销售量。如果是第3个月,那么它必须考虑过去两个月基于ID销售的平均价格,如果是第2个月,那么它必须考虑所有月份分别根据ID销售1个月的平均价格。
我已经使用ifelse
和mean
功能,利用它,但是当我尝试使用它的所有月份,我已经用于执行
查询
sampleframe$Churn <- ifelse(sampleframe$Month==4|sampleframe$Month==5|sampleframe$Month==6, ifelse(sampleframe$Sold<0.7*mean(sampleframe$Sold[sampleframe$ID[sampleframe$Month==-1&sampleframe$Month==-2&sampleframe$Month==-3]]),1,0),0)
将根据某些行丢失查询的逻辑与前一个月的销售价值70%进行比较,如果当前值高于以前的平均月份值,则应该返回1 else 0
请学习如何[格式化您的问题文本](http://stackoverflow.com/editing-help) – Jaap
嗨Jaap,感谢您的建议,但表值如何显示 – Pallavi
您可以更新预期的输出。 – akrun