0

ur我正在尝试在 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 语句。我是否过于复杂了?

4

1 回答 1

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',''))
于 2013-11-13T18:49:28.557 回答