【发布时间】:2017-12-14 16:20:28
【问题描述】:
我有以下数据
data = tribble(~t,~key,~value,
1,"a",10,
2,"a",20,
3,"a",30,
1,"b",100,
2,"b",200,
3,"b",300,
1,"c",1000,
2,"c",2000,
3,"c",3000)
并希望得到以下结果
result = tribble(~t,~key,~value,
1,"a",-20,
2,"a",-10,
3,"a",0,
1,"b",-200,
2,"b",-100,
3,"b",0,
1,"c",-2000,
2,"c",-3000,
3,"c",0)
这个想法是我想从该组中的所有其他值中减去第三个值。我尝试group_bykey,但在组内的行明智减法上挣扎
【问题讨论】:
-
data %>% group_by(key) %>% mutate(value = value - last(value))怎么样 -
成功了!谢谢