如何计算R中数据帧中两行(字符串)之间的差异
我有一个如下的数据帧如何计算R中数据帧中两行(字符串)之间的差异,r,R,我有一个如下的数据帧 ClientID month test ASD Sep Auto:2,Finance:1 ASD Oct Finance:2 FGH Sep Auto:1,Finance:2 FGH Oct Oil:2 上面的数据帧是我从下面的代码中得到的 df %>%
ClientID month test
ASD Sep Auto:2,Finance:1
ASD Oct Finance:2
FGH Sep Auto:1,Finance:2
FGH Oct Oil:2
上面的数据帧是我从下面的代码中得到的
df %>%
group_by(client_id, month, Sector) %>%
tally() %>%
group_by(client_id, month) %>%
summarise(test = toString(paste(Sector, n, sep=":")))
现在,我想在客户层面计算的是,从9月到10月,他的部门发生了变化。就像在9月,客户持有汽车部门的2种工具,但在10月,他减少到了1种。或者,他增加了任何新的部门,而这些部门在几个月内都没有出现。在上述数据中,ASD拥有来自汽车的2种工具和来自金融的1种工具,在10月份,他增加了1种金融工具,但出售了来自汽车的2种工具。如果他从九月到十月减少了仪器的数量,那么这个数字应该是负数
所需输出将为
ClientID month test Output
ASD Sep Auto:2,Finance:1. NA
ASD Oct Finance:2 Finance:1,Auto:NILL
FGH Sep Auto:1,Finance:2 NA
FGH Oct Oil:2 Oil:2,Finance:2,Auto:1
资料
df您能使用dput(df)
使其可复制吗?数据的代码与上面给出的数据不一致。这只是我给出的示例代码。我指的是最后的数据创建部分。@Sotos您可以使用相同的代码来复制数据。我已经编辑了这个问题。
df <- data.frame(ClientID = rep(c("ASD.", "DFG."), each = 5),
month = rep(c("Sep", "Oct" ) , c(3,2)),
Sector = c("Auto", "Auto", "Finance", "Finance", "Finance",
"Auto", "Finance", "Finance", "Oil", "Oil"),
stringsAsFactors=FALSE)