如何使用sapply将函数应用于vector_a [i]从vector_b [i]返回值

时间:2013-09-02 06:04:27

标签: r sapply

我想将一个函数应用于dataframe $ column1的每个值,返回相同长度的向量。如果条件适用,则输出应包含来自dataframe $ column2(同一行的)的值。在(伪)代码中

function <- "If (value of dataframe$column1[i] is something) {return(dataframe$column1[i])} else {return(dataframe$column2[i])}  

output_vector <- sapply(dataframe$column1, function, dataframe$column2)

在应用函数时,是否应该记住向量的索引,以便从不同的向量返回一个值但具有相同的索引?

1 个答案:

答案 0 :(得分:3)

这正是ifelse()的作用:

df = data.frame(col1=1:10, col2=21:30)
output_vector = ifelse(df$col1 > 5, df$col1, df$col2)