R中的过滤矩阵

用户名

我有两个数据,一个逻辑(selected):

  YPR163C   YPR164W   YPR165W   YPR166C   YPR167C   YPR168W   YPR169W   YPR170C 
    FALSE     FALSE     FALSE     FALSE     FALSE     FALSE     FALSE     FALSE 
  YPR171W   YPR172W   YPR173C   YPR174C   YPR175W   YPR176C   YPR177C   YPR178W 
    FALSE     FALSE     FALSE     TRUE      FALSE     FALSE     FALSE     FALSE 
  YPR179C   YPR180W   YPR181C   YPR182W   YPR183W   YPR184W   YPR185W   YPR186C 
    FALSE     FALSE     FALSE     FALSE     TRUE      FALSE     FALSE     FALSE 
  YPR187W   YPR188C   YPR189W   YPR190C   YPR191W   YPR192W   YPR193C   YPR194C 
    FALSE     FALSE     FALSE     FALSE     FALSE     FALSE     FALSE     FALSE 
  YPR195C   YPR196W   YPR197C   YPR198W   YPR199C   YPR200C   YPR201W   YPR202W 
    FALSE     FALSE     FALSE     FALSE     FALSE     FALSE     FALSE     FALSE 
  YPR203W   YPR204W 
    FALSE     FALSE 

另一个矩阵(dataExpr):

        cln3.1       cln3.2 clb2.2 clb2.1 alpha0 alpha7 alpha14 alpha21 alpha28
YAL001C   0.15 -0.006660232  -0.22   0.07  -0.15  -0.15   -0.21    0.17   -0.42
YAL002W  -0.07 -0.760000000  -0.12  -0.25  -0.11   0.10    0.01    0.06    0.04
YAL003W  -1.22 -0.270000000  -0.10   0.23  -0.14  -0.71    0.10   -0.32   -0.40
YAL004W  -0.09  1.200000000   0.16  -0.14  -0.02  -0.48   -0.11    0.12   -0.03
YAL005C  -0.60  1.010000000   0.24   0.65  -0.05  -0.53   -0.47   -0.06    0.11
YAL007C   0.65  1.390000000  -0.29  -0.54  -0.60  -0.45   -0.13    0.35   -0.01

我想过滤掉逻辑数据中为FALSE的行。我尝试了不同的方法,例如:

esetSel <- dataExpr[selected, ]

但它不起作用...输出:

 cln3.1 cln3.2 clb2.2 clb2.1 alpha0 alpha7 alpha14 alpha21 alpha28 alpha35
 alpha42 alpha49 alpha56 alpha63 alpha70 alpha77 alpha84 alpha91 alpha98 alpha105
 alpha112 alpha119 cdc15.10 cdc15.30 cdc15.50 cdc15.70 cdc15.80 cdc15.90
 cdc15.100 cdc15.110 cdc15.120 cdc15.130 cdc15.140 cdc15.150 cdc15.160 cdc15.170
 cdc15.180 cdc15.190 cdc15.200 cdc15.210 cdc15.220 cdc15.230 cdc15.240 cdc15.250
 cdc15.270 cdc15.290 cdc28.0 cdc28.10 cdc28.20 cdc28.30 cdc28.40 cdc28.50
 cdc28.60 cdc28.70 cdc28.80 cdc28.90 cdc28.100 cdc28.110 cdc28.120 cdc28.130
 cdc28.140 cdc28.150 cdc28.160 elu0 elu30 elu60 elu90 elu120 elu150 elu180 elu210
 elu240 elu270 elu300 elu330 elu360 elu390
鲍姆斯

如果的元素名称selected与的行名称相对应dataExpr,则应该可以进行以下操作:

esetSel <- dataExpr[selected[row.names(dataExpr)], ]

它是子集(或重新排序)selected,以使其与的行名的顺序匹配dataExpr,然后dataExpr与所得逻辑向量匹配的子集

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章