【发布时间】:2019-07-05 02:21:54
【问题描述】:
我有以下数据框,我想计算每行出现“高”一词的次数,并将“countHigh”作为另一列附加到数据框
a b c
1 High High High
2 High Low High
3 Low Low High
所以我应该得到一个计数向量 (3,2,1)。
我试过 apply() 和 stringr:str_count 如下:
> apply(test.df[,1:3],1,str_count,"High" )
[,1] [,2] [,3]
[1,] 1 1 0
[2,] 1 0 0
[3,] 1 1 1
我用了两次 apply() 函数:
> apply(apply(test.df[,1:3],1,str_count,"High" ),2,sum)
[1] 3 2 1
有没有更好的方法来做到这一点,特别是只使用一次 apply() 并使用 grep() 或 which() ?
谢谢
【问题讨论】:
标签: r