Извлечение строк на основе значения - PullRequest
0 голосов
/ 16 марта 2012

У меня есть текстовый файл с разделителями табуляции, который содержит следующие столбцы:

Probe    A_sig  A_Pval  
ILMN_122 12.31   0.04    
ILMN_456 56.12   0      
ILMN_198 981.2   0.06    
ILMN_980 876.0   0.001   
ILMN_542 123.9   0.16     
ILMN_567 134.1   0      
ILMN_452 213.4   0.98     
ILMN_142 543.8   0.04  
ILMN_765 187.4   0.05    

Теперь я хочу вынуть те строки, которые имеют Pval <.05.Вывод должен выглядеть как </p>

     Probe     A_sig   A_Pval  
   ILMN_122     12.31   0.04  
   ILMN_980     876.0   0.001   
   ILMN_142     543.8   0.04   

Может кто-нибудь, пожалуйста, помогите мне?

Ответы [ 2 ]

9 голосов
/ 16 марта 2012

Я отвечу на это, но это основной вопрос, который, вероятно, повторяется в другом месте в этом списке.

Загрузка данных.

DAT <- read.table(text="Probe    A_sig  A_Pval  
ILMN_122 12.31   0.04   
ILMN_456 56.12   0        
ILMN_198 981.2   0.06   
ILMN_980 876.0   0.001     
ILMN_542 123.9   0.16      
ILMN_567 134.1   0          
ILMN_452 213.4   0.98
ILMN_142 543.8   0.04
ILMN_765 187.4   0.05", h=T)

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

DAT[DAT$A_Pval <.05, ]

Однако это также возвращает нулевые значения.Это не то, на что вы похожи.Если вы не хотите, чтобы нули использовали логический оператор, а также в:

DAT[DAT$A_Pval <.05 & DAT$A_Pval!=0, ]

Я предлагаю вам взглянуть на некоторые руководства и эту справочную карту (LINK) Начать.

2 голосов
/ 16 марта 2012

my_dataframe[my_dataframe$A_Pval < 0.05,]

Важна запятая.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...