在R中流水线化data.frame

时间:2016-10-27 09:38:47

标签: r

当我有这样的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}})

1 个答案:

答案 0 :(得分:0)

我不是专家,但...... iris$Petal.Width*c(2, 1, 1)[iris$Species]会成为一个有效的答案吗?