过滤数据框中的值
Posted
技术标签:
【中文标题】过滤数据框中的值【英文标题】:Filter values in data frame 【发布时间】:2013-03-29 20:10:27 【问题描述】:基本上,我有一个基因数据集,其中行是基因,列是蛋白质折叠的连续时间点。我需要一个函数来过滤整个数据集中具有某个阈值的基因,而不仅仅是某些向量。例如:
alpha98 alpha105 alpha112 alpha119
YAL002W 0.22 0.58 -0.36 0.13
YAL003W 0.05 0.55 -0.08 0.33
任何帮助都会很棒。
【问题讨论】:
df[df$alpha98>threshold,] ? 您希望阈值应用于所有基因,还是仅应用于特定种类?如果基因超过阈值,您是要选择整行还是只选择特定值? 谢谢,朱巴。我想知道是否有办法对整个数据集执行此操作,而不仅仅是列。我会指定这个。 Ricardo,感谢您的建议让我指定。我正在寻找一个适用于整个数据集的函数,而不仅仅是一个特定的向量。 @user2105555,然后正如朱巴指出的那样,您可以简单地使用myDF[myDF>threshold]
(不指定列)
【参考方案1】:
R
被矢量化,R
被回收。这意味着,一般来说,像myDF > threshold
这样简单的东西会让你非常接近你需要的东西。
具体来说,当 DF 中的单元格超过阈值时,它将为您提供与 data.frame
相同尺寸的逻辑 matrix
(否则为 FALSE
)。
然后,您可以使用该矩阵作为工具来对 data.frame 进行子集化。
myDF[myDF > threshold]
【讨论】:
以上是关于过滤数据框中的值的主要内容,如果未能解决你的问题,请参考以下文章
MS Access 2013 - 根据文本框中的值过滤列表框中的值