2013-07-19 2 views
2

Я пытаюсь фильтровать строки таблицы, которые содержат по крайней мере 3 наблюдения со значениями, большими или равными 0,7. Вот пример того, что я хотел бы сделать в R:Строки таблицы фильтров, содержащие по крайней мере X наблюдений со значением, большим (или равным), чем Y

sA sB sC sD sE sF 
g1 0.1 0.2 0.8 1.2 0.5 0.0 
g2 0.7 0.3 0.9 0.8 0.5 1.0 
g3 0.2 0.3 0.8 0.9 0.5 0.0 
g4 0.5 0.4 0.9 0.7 0.5 1.0 
g5 0.2 0.2 0.8 0.9 0.5 0.0 

Фильтрация приведет:

sA sB sC sD sE sF 
g2 0.7 0.3 0.9 0.8 0.5 1.0 
g4 0.5 0.4 0.9 0.7 0.5 1.0 

Может кто-то помочь мне по этой проблеме?

ответ

4

Если х ваши данные,

> x[rowSums(x >= 0.7) >= 3,] 
      sA sB sC sD sE sF 
     g2 0.7 0.3 0.9 0.8 0.5 1 
     g4 0.5 0.4 0.9 0.7 0.5 1 
0

Если ваше имя таблицы.

Вы можете получить доступ к запрашиваемым линиям с:

в [применить (а> = 0.7,1, сумма)> = 3]

 sA sB sC sD sE sF 
    g2 0.7 0.3 0.9 0.8 0.5 1 
    g4 0.5 0.4 0.9 0.7 0.5 1 
Смежные вопросы