如何基于数据框中的其他4个变量的值创建字符串变量

时间:2019-10-01 12:31:30

标签: loops dataframe if-statement

我想找到一种基于其他向量的值在我的数据框中生成字符串向量的快速方法。

我有一个像这样的数据框:

x <- data.frame("Trials" = 1:6, "Prem" = c(0,0,0,1,0,1), "Corr" = 
c(1,1,0,0,0,0), "Incorr" = c(0,0,0,0,1,0))

,并希望根据Prem,Corr和Incorr中的值生成另一个变量“ response_type”。现在,我循环执行此操作,但我想知道是否有更快,更优雅的方法

for (i in dataframe$Trials) {

if (dataframe$Prem[i]>0) {

dataframe$response_type[i] = 'premature'

} else if ( dataframe$Corr[i]>0) {

dataframe$response_type[i] = 'correct'

} else  {

dataframe$response_type[i] = 'incorrect'

}}

0 个答案:

没有答案