【发布时间】:2012-12-07 11:42:41
【问题描述】:
可能重复:
R: subset() logical-and operator for combining conditions should be & not &&
我有一个简单的问题,但我不知道如何解决这个问题...... 我想选择 value_1 > 0 和 value_2 > 0 的所有行。 现在我有了这个代码:
dataOnBoth<-data[data$value_1 > 0,][data$value_2 > 0,]
当我在 log2_fold_change 上排序这些数据时,我有这个输出:
gene_id sample_1 sample_2 status value_1 value_2 log2_fold_change
86 uc001aen.1 q1 q2 NOTEST 0.0619347 0 -1.79769e+308
150 uc001ahx.1 q1 q2 NOTEST 0.0432199 0 -1.79769e+308
186 uc001ajk.1 q1 q2 NOTEST 0.0854541 0 -1.79769e+308
251 uc001amf.1 q1 q2 NOTEST 0.0636211 0 -1.79769e+308
358 uc001are.3 q1 q2 NOTEST 0.3642040 0 -1.79769e+308
394 uc001ass.1 q1 q2 NOTEST 0.0196794 0 -1.79769e+308
test_stat p_value q_value significant
86 -1.79769e+308 0.4767020 1 no
150 -1.79769e+308 0.3960920 1 no
186 -1.79769e+308 0.0631033 1 no
251 -1.79769e+308 0.4428030 1 no
358 -1.79769e+308 0.1083640 1 no
394 -1.79769e+308 0.1489190 1 no
所以 R 没有测试第二个条件... 当使用 & 测试这两个条件时,我收到 0 行:
dataOnBoth<-data[data$value_1 > 0 && data$value_2 > 0,]
如何选择 value_1 > 0 且 value_2 > 0 的所有行?
【问题讨论】:
-
单 '&' 对每个元素进行检查,双 '&' 对整个列表/向量进行检查。
标签: r matrix row selection conditional-statements