对于满足某个条件的变量的/ While循环[R]

时间:2013-11-13 15:57:50

标签: r if-statement

urI我试图在R中写一个if else语句(最终),但仅限于满足某个条件的变量。我确信有一种简单的方法可以做到这一点 - 但在搜索时似乎无法找到任何具体内容......

以下是while循环的示例(不确定我是否可以将其用于此目的):

while(gene[c(36)] >=30 & gene[c(37)] >=30 & gene[c(38)] >=30)
{
gene$Category <- ifelse((gene[c(49)] == './.' & gene[c(48)] == './.'), 'N/A',     ifelse(((gene[c(50)] == './.') & (gene[c(36)] >=30 & gene[c(37)] >=30)),'denovo deletion',''))
}

我在技术上希望仅在满足某些其他条件时才对变量运行if else语句。我过度复杂吗?

1 个答案:

答案 0 :(得分:2)

假设您的ifelse结构正常,您可以根据while循环中现在表达的条件对其进行“子集化”:

condition = (gene[36] >=30 & gene[37] >=30 & gene[38] >=30)
gene$Category[condition] <- ifelse((gene[49] == './.' & gene[48] == './.'), 'N/A', ifelse(((gene[50] == './.') & (gene[36] >=30 & gene[37] >=30)),'denovo deletion',''))