当我有这样的data.frame时有什么用处:
data(iris)
head(iris)
我希望得到一个Petal.Width * 2的向量,如果Species ==“Setosa”如果不是我想获得Petal.Width * 1并且结果向量的长度必须是== nrow(虹膜)。
使用sapply? VCAST?我不知道。
sapply(iris,function(iris){
if (iris$Species=="setosa")
{iris$Petal.Width*2}else{
iris$Petal.Width*1}})
答案 0 :(得分:0)
我不是专家,但...... iris$Petal.Width*c(2, 1, 1)[iris$Species]
会成为一个有效的答案吗?