【发布时间】:2020-02-16 08:31:15
【问题描述】:
我有一个数据集,可以将学生成绩的提高与他们的学习方法进行比较。分类参数是学习方法,三个选项是NO(无协助)、FULL(是协助)和CHECK(根据需要协助)。要设置我的回归,我需要设置 x1=1,如果学生有充分的帮助,否则 x1=0。如果学生被标记为 CHECK,我还需要设置 x2=1,否则设置 x2=0。对于没有帮助,我也需要做同样的事情(如果 ASSIST='NO',则 x3=1,否则 x3=0)。这是我正在尝试做的事情:
if (ACCHW$ASSIST<-"FULL") { x1=1
} else {
x1=0
}
但我收到错误:if (ACCHW$ASSIST
我是在 R 中创建循环的新手,非常感谢您的建议!
【问题讨论】:
-
<-是赋值运算符而不是比较器,例如==、!=<=等。这是你的第一个问题。你的意思是<=? -
这里似乎不需要循环。试试
x1 = ifelse(ACCH$ASSIST == "FULL", 1, 0) -
我试过这个。当我运行回归 p4.53=lm(ACCHW$IMPROVE~x1 +x2, data=ACCHW) summary(p4.53) 我没有得到 beta 估计值...我需要 beta 估计值。
标签: r loops data-manipulation