过滤行和计数列 - 可以减少或过滤吗?

时间:2014-06-24 22:07:35

标签: r

我有一张这样的表:

1   2   3   4   5
a   b   a       c
b   b           
a   a       a   a
c   b       c   b

是否有一个特殊的语法用于Filter或Reduce(或其他完全?)来获取它,所以只显示带有'a'(包括空格)的行?同样,是否有内置的方法来计算每列的“a”频率,还是我必须单独循环?

1 个答案:

答案 0 :(得分:1)

无法想到将行或列传递给Reduce或Filter以实现第一个的方法,尽管data.frame可能会以列方式传递给第二个问题,因为它是列的列表。 apply是执行逐行操作的常用机制,但我可以考虑更快的方法。首先,假设它被命名为X并且是矩阵或data.frame:

X[ rowSums(X=="a", na.rm-TRUE) > 0 , ]

第二个:

colSums( X == "a")