我想在ispurchase==1为真的条件下对“dollvalue”的值求和,但是我找不到有效的解决方案。我尝试了其他帖子的解决方案,这些帖子似乎都太复杂了,结果都不起作用。我试图通过组合group和aggregate来组合plyr方法,但我得到的错误参数FUN缺失。
library(plyr)
returntrip <- roundtrips %>%
group_by(id) %>%
aggregate(purchcost = sum(dollvalue[ispurchase==1],
FUN = sum)) %>%
ungroup
此外,我还尝试简单地放弃它,我认为它几乎可以工作,但我得到以下错误:
聚合错误。数据帧(如.data.frame(x),…):
参数必须具有相同的长度
我假设,因为列表和数据帧的长度不同。有没有办法解决这个问题?
returntrip <- aggregate(x = roundtrips$dollvalue[roundtrips$ispurchase==1],
by = list(roundtrips$id),
FUN = sum)
以下是数据帧片段的外观:
头部看起来像:
ethamount dollvalue id ispurchase dollarcum
1: 0.0000877963125548729991613761125535 -0.0010491659350307322180057001403952 883 1 0.000000000000000000
2: 0.0010000000000000000208166817117217 -0.0107400000000000012817524819297432 36927 1 0.000000000000000000
3: 75.4154000000000053205440053716301918 -804.6823180000000093059497885406017303 2637 1 0.000000000000000000
4: 0.1066286798619889564232465772875003 -1.0662867986198896197436170041328296 72274 1 0.000000000000000000
5: 0.0100000000000000002081668171172169 -0.1000000000000000055511151231257827 94359 1 0.010899999999999993
6: 0.1000000000000000055511151231257827 -0.9460000000000001740829702612245455 3083 1 0.000000000000000000
7: 1.0000000000000000000000000000000000 -9.3499999999999996447286321199499071 102645 1 0.000000000000000000
8: 0.0000000000000000010000000000000001 -0.0000000000000000098900000000000005 117464 1 0.000000000000000000
9: 0.0100000000000000002081668171172169 -0.1108999999999999985789145284797996 91239 1 -0.010899999999999993
10: 12.0000000000000000000000000000000000 -144.9600000000000079580786405131220818 52894 1 0.000000000000000000
11: 14.7899999999999991473487170878797770 -207.0600000000000022737367544323205948 80993 1 0.000000000000000000
12: 55.2299999999999968736119626555591822 -689.2703999999999950887286104261875153 74580 1 0.000000000000000000
13: 0.1000000000000000055511151231257827 -1.2480000000000002202682480856310576 116147 1 0.000000000000000000
14: 1.9995590000000000863167315401369706 -37.4517400699999996049882611259818077 36943 1 0.000000000000000000
15: 0.3914821535012809605724726225162158 -5.5786206873932533412130396754946560 86862 1 0.000000000000000000
16: 0.4893235858000000160217268785345368 -6.3122742568200003177025791956111789 88279 1 0.000000000000000000
17: 0.0001392130443151549901940194908789 -0.0016510667055777380248654528926977 72433 1 0.000000000000000000
18: 0.1000000000000000055511151231257827 -1.0160000000000000142108547152020037 68487 1 0.000000000000000000
19: 0.7211898100000000422227230956195854 -8.3946493884000012997148587601259351 28354 1 0.000000000000000000
20: 0.6650000000000000355271367880050093 -8.0265500000000002955857780762016773 80397 1 0.000000000000000000
非常感谢您提供的任何提示或解决方案。