IF声明无效 - R

时间:2017-08-03 20:25:04

标签: r

我有一个变量sleptim,其中包含数小时的睡眠时间,范围从2小时到19小时。 如果小时睡眠时间<6,我想要sleptim1 var。采取新的价值&#34;低于正常水平&#34; 如果小时数小于9,我想要sleptim1 var。采取新的价值&#34;高于正常水平&#34; 其他&#34;正常&#34; 但新分类变量的结果不能很好地运作。

请帮助

for (i in 500: 1500)
{
    if(question4$sleptim1[i]<6) 
    {question4$sleptim1[i] <- "Below Normal"}


    else if(question4$sleptim1[i]>9)
    {question4$sleptim1[i] <- "Above Normal"}


    else
    {question4$sleptim1[i] <- "Normal"}
}

1 个答案:

答案 0 :(得分:1)

我不推荐这种循环,但这个结果似乎是你想要的。您需要创建新列question4$sleptim1并将结果存储在那里,而不是覆盖question4$sleptim1_Wanted

question4$sleptim1_Wanted <- NA

for (i in 500: 1500)

{
    if(question4$sleptim1[i]<6) 
    {question4$sleptim1_Wanted[i] <- "Below Normal"}


    else if(question4$sleptim1[i]>9)
    {question4$sleptim1_Wanted[i] <- "Above Normal"}


    else
    {question4$sleptim1_Wanted[i] <- "Normal"}
}