【发布时间】:2017-07-28 01:30:38
【问题描述】:
使用这个数据框,我想为 var1 的每次变化将 var2 增加 0.1
df <- data.frame(var1=c("a", "a", "1", "0", "b", "b", "b", "c", "1", "1"))
在这种情况下,结果应该是:
var1 var2
a 1
a 1
1 1.1
0 1.2
b 1.3
b 1.3
b 1.3
c 1.4
1 1.5
1 1.5
我能够使用以下代码为 var1 的每次更改将 var2 增加 1,但我无法操纵它以增加 0.1。
df$var2 <- c(0,cumsum(as.numeric(with(df,var1[1:(length(var1)-1)] != var1[2:length(var1)]))))
【问题讨论】:
标签: r