我正在创建一个虚拟变量-如果上一行具有相同的Species,则为1,否则为0。
我正在使用它来学习应用功能。
我可以对整个集合执行此操作,但不能对指定向量执行此操作。
这就是我要尝试的方式。
sapply(iris$Species, function(x)ifelse(x==lag(x,1),1,0))
它返回NA的列表。
注意:删除$ Species返回整个集合的正确值
我知道有更快的方法(请参见下文),我只是想学习应用功能。
index = which(iris$Species==lag(iris$Species,1))
same = rep(0,nrow(test))
same[index] = 1
iris[,'test'] = same