数据集被用于在该谷歌片链路 https://docs.google.com/spreadsheets/d/1eV33Sgx_UVtk2vDtNBc4Yqs_kQoeffY0oj5gSCq9rCs/edit?usp=sharing用相同的值列变量组合成一个新的变量
AMC.dataset$ExamMC.A<-surveySP15$Exams_A
AMC.dataset$ExamMC.A<-factor(NA, levels=c("TRUE", "FALSE"))
AMC.dataset$ExamMC.A[AMC.dataset$Exams_A=="1 time"|AMC.dataset$Exams_A=="2-4 times"|AMC.dataset$Exams_A==">4 times"]<-"TRUE"
AMC.dataset$ExamMC.A[AMC.dataset$Exams_A=="0 times"]<-"FALSE"
AMC.dataset$ExamMC.A=as.logical(AMC.dataset$ExamMC.A)
我使用这些5行的代码重新编码通过Exams_I变量Exams_A的全部9对于那些为这9个变量中的任何一个回答了1次或更多次的人而言,都是“真”的逻辑二进制结果。我希望将所有这些变量组合到数据集中的新列中,对于每个观测行,如果在整行中9个检查_A至I中的任何一个都有“真”,则新变量结果将被视为“真实”,这意味着他们至少有一次承诺记录在数据集中的任何9种类型的考试学术不端行为。如果在观察行中没有真正的结果,我希望新的变量结果为“假”,这意味着他们(观察行)从未提交过考试学术不端行为
我对这个新变量的代码是什么
AMC.dataset$ExamMC = any(AMC.dataset$ExamMC.A, AMC.dataset$ExamMC.B, AMC.dataset$ExamMC.C, AMC.dataset$ExamMC.D, AMC.dataset$ExamMC.E, AMC.dataset$ExamMC.F, AMC.dataset$ExamMC.G, AMC.dataset$ExamMC.H, AMC.dataset$ExamMC.I)
但是这个代码已被串(AMC.dataset $ ExamMC.I)在最后一个变量输出,其中有215假案和0真正覆盖,将覆盖字符串的其余部分给予215个“假”情况的新变量输出,即使其他变量可能保持“真”作为它们的情况输出。
编辑
我现在已经创建了一套考试的不当行为变量的数据帧
AMC.dataset$ExamMCdf<-data.frame(AMC.dataset$ExamMC.A, AMC.dataset$ExamMC.B, AMC.dataset$ExamMC.C, AMC.dataset$ExamMC.D, AMC.dataset$ExamMC.E, AMC.dataset$ExamMC.F, AMC.dataset$ExamMC.G, AMC.dataset$ExamMC.H, AMC.dataset$ExamMC.I)
现在我的问题是如何去在一个新的列创建复合变量正确通读每一个观察行,在数据框中将任何具有单个“真”结果的行标记为复合变量的“真”。任何没有“真实”结果的观察行应该被复合变量标记为“假”。
感谢您的帮助。
我想这将有点像一个ifelse语句,所以,新的复合变量将显示为“真”如果观察行已记录的“真”的任何如果其他情况(如果9种学术不端行为中的任何一种没有“真实”输出),那么新的复合变量将被读作“假”,如在该观察行中所具有的那样没有犯过任何类型的考试不当行为。 –
或者作为合并函数? –
电子数据表不公开共享或链接访问 – MichaelChirico