2015-07-20 56 views
0

我看到了几个类似于我的问题,但没有一个答案帮助我直接获得此代码。在循环中使用if语句在R中的data.set中创建一个类

我想使用if()语句根据一组语句对数据集进行分类,从而制作一个循环,以便将其应用于整个数据集。这里是我的代码:

x100 <- c(100,100,85,90,100,75,65,55,95,90) 
x20 <- c(100, 95, 60,52,45,36,47,50,90,85) 
index <- x100 + x20 
code <- data.frame(x100, x20, index) 
code$class <-for (i in code){ 
       if (x100 < 100 & x20 < 50) { "3"} 
       else if (x100 ==100 & x20 >=50){"2"} 
       else (x100 == 100 & x20 == 100) "1" 
       } 

我刚刚开始有R工作,对不起,如果这是一个基本的问题。

回答

1

代码

for(i in code) { ... } 

迭代在数据帧中的列,而不是行。使用ifelse

with(code, ifelse(x100 < 100 & x20 < 50, '3', ifelse(x100 ==100 & x20 >=50, '2', '1'))) 
+0

谢谢你的快速和正确的答案 –