r - 如何使用 R 中的计数函数(如 NROW)过滤 mutate() 中的数据?
问题描述
我有一个包含列doc_id
和feats
(两个字符向量)的数据框。我正在尝试创建一个新列,其中包含列n_rel_prn
中值的总出现'PronType=Rel'
次数。feats
doc_id
我不能使用 filter(),因为它会过滤掉我需要的所有其他数据(即feats
不是的值'PronType=Rel'
),否则它就可以了。(这是代码片段:)
tcorpus %>% group_by(doc_id) %>%
filter(feats=='PronType=Rel') %>%
mutate(n_rel_prn = n())
基本上,我需要像下面的代码一样工作的东西(除了实际工作——这显然不是):
tcorpus %>% group_by(doc_id) %>%
mutate(n_rel_prn = NROW(feats == 'PronType=Rel'))
有没有办法可以计算'PronType=Rel'
观察次数(按 doc_id 分组)并将这些总数添加到新列中?(我假设至少group_by %>% mutate()
是要走的路。)
解决方案
你快到了。尝试这个:
tcorpus %>% group_by(doc_id) %>% mutate(n_rel_prn = sum(feats == 'PronType=Rel'))
推荐阅读
- python - Django如何将选择列表传递给自定义选择小部件
- deployment - 如何绘制部署图?
- php - 如何验证是否在jquery ajax .prop fumction()中选中了复选框?
- qt - 从一个线程写入套接字并从另一个线程读取
- java - NullPointerException,但仅当我将 Android 手机连接到计算机时
- c# - Jsreport Xlsx 列大小
- sql-server - SSIS - SSIS 挂起时的最佳实践
- php - 无法更新mysql中的列
- java - Retrofit2拦截器将特殊字符转换为Android中的问号
- python - Flask/Python - 如何以文本形式而不是列表呈现这些数据