SAS:按流行度和丰富度过滤行

时间:2017-10-30 16:23:18

标签: sas

我正在写信请求帮助找到一个等效的方法来做我知道如何做的事情,但现在因为软件限制而不得不在SAS做。

我在行和特征(在我的例子中,细菌名称)中有独特的样本。正如一些人所指出的,我知道这是一种不常见的数据结构。

我想从我的表中删除任何不符合我的质量控制过滤标准的功能,在这种情况下,单元格值至少为0.01%,并且在至少10%的样本中找到:

要在R中执行此操作,请执行以下操作:

丰度/流行率过滤器

spp.filt <- spp.dat[ apply(spp.dat, 1, function(bug) sum(bug >= 0.01) >= 0.1*ncol(spp.dat)), ]

有没有人知道如何在SAS中完成这项工作?

我无法找到&#34;过滤流行率的相关结果&#34;或&#34;过滤丰度&#34;但非常感谢任何帮助。

正如其他人所建议的那样,数据如下所示:

           sample 1 sample 2    sample 3 
feature a   0        0           0.1
feature b   0       0.2           0
feature c   0        0            0
feature d   0.4      0           0.5

1 个答案:

答案 0 :(得分:0)

你在SAS中这样做的方法就是简单地使用你选择的PROC来计算你正在查看的各种数字,然后通过各种方法中的一种将它与主要数据结合起来。数据集和过滤器。

例如,如果您想要一个14岁或以上的班级人员列表,您可以这样做:

null

还有很多其他方法可以做到这一点,包括滚动自己的功能,这完全取决于程序/数据/样式/首选项的详细信息。如果您包含样本数据和所需的输出,您可能会获得更有用的东西。