2017-06-22 107 views
0

所以目前,我有一个有8列和数行的数组引用人。我想使用apply函数根据另一列的值将一列的值更改为1或0。使用r中的apply函数更改数组中的元素

我已经有这样一个循环,它是

for(i in 1:nrow(OutComes)) { 
    if(OutComes[i,"Risk_Factor"] > 0.7) { 
    OutComes[i,"OnsetAge"] = 1 
    } else { 
    OutComes[i,"OnsetAge"] = 0 
    } 
} 

所以结局阵列具有称为其中每个人指定使用runif()的均匀随机数“Risk_Factor”载体。如果此数字大于0.7,则“Onset Age”列中同一行中的元素会发生变化。

这将如何与应用函数一起工作? 我已经搜索,但无法找到任何帮助。

+0

看到这个链接,可能有助于[链接](http://petewerner.blogspot.in/2012/12/using-apply-sapply-lapply-in-r.html) –

回答

0

赋值是一个矢量化函数,所以不需要循环。

is_risky <- OutComes[,"Risk_Factor"] > 0.7 
OutComes[, "OnsetAge"] <- as.integer(is_risky) 
相关问题