我有tab delim文本文件,其中包含以下列:
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
Run Code Online (Sandbox Code Playgroud)
现在我想取出那些Pval <.05的行.输出应该是这样的
Probe A_sig A_Pval
ILMN_122 12.31 0.04
ILMN_980 876.0 0.001
ILMN_142 543.8 0.04
Run Code Online (Sandbox Code Playgroud)
谁能帮帮我吗?
我会回答这个,但这是一个基本问题,可能会在此列表的其他地方重复出现.
加载数据.
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)
Run Code Online (Sandbox Code Playgroud)
您可以使用索引,如下所示:
DAT[DAT$A_Pval <.05, ]
Run Code Online (Sandbox Code Playgroud)
但是,这也会返回零值.这不是你输出的样子.如果您不希望零使用逻辑运算符&以及:
DAT[DAT$A_Pval <.05 & DAT$A_Pval!=0, ]
Run Code Online (Sandbox Code Playgroud)
我建议你看看一些手册和这个(LINK)参考卡,以帮助你入门.