我有一张这样的表:
1 2 3 4 5
a b a c
b b
a a a a
c b c b
是否有一个特殊的语法用于Filter或Reduce(或其他完全?)来获取它,所以只显示带有'a'(包括空格)的行?同样,是否有内置的方法来计算每列的“a”频率,还是我必须单独循环?
答案 0 :(得分:1)
无法想到将行或列传递给Reduce或Filter以实现第一个的方法,尽管data.frame可能会以列方式传递给第二个问题,因为它是列的列表。 apply
是执行逐行操作的常用机制,但我可以考虑更快的方法。首先,假设它被命名为X
并且是矩阵或data.frame:
X[ rowSums(X=="a", na.rm-TRUE) > 0 , ]
第二个:
colSums( X == "a")