2
这就是我的数据框的外观。最右边的列是我想要的列。我试图在ActivityType为Sale时获得唯一FundType的累积和。所以第一行有一个activitytype == email,因此没有累计和,第二行相同,第三行有activitytype == sale,并且它应该显示累计和为1,因为条件满足。带附加条件的唯一唯一变量的累积和
library(data.table)
dt <- fread('
Name ActivityType FundType UniqueFundsSale(Desired)
John Email a 0
John Webinar b 0
John Sale a 1
John Sale b 2
John Webinar c 2
John Sale a 2
John Sale b 2
John Sale c 3
Tom Email a 0
Tom Webinar b 0
Tom Sale a 1
Tom Sale b 2
Tom Webinar c 2
Tom Sale a 2
Tom Sale b 2
Tom Sale c 3')
我试过以下。
dt[, UniqueFundsSale :=
cumsum(ActivityType=="Sale" & !duplicated(FundType,ActivityType) & !FundType=="")
, by = Name]
谢谢你的帮助。
据透露,就可以'FREAD( “文本文本文本”) '也构建一个例子。 – Frank
@Frank谢谢弗兰克。我不知道。所以我可以使用fread构建一个示例并直接将其发布到stackoverflow? – gibbz00
是的,我会编辑它来演示。 – Frank