r - 使用 dplyr 改变多列中的数据
问题描述
这是对较早问题(在 R 中一次性执行多个列的转换)的更新问题;然后建议的解决方案现在会引发错误(见下文)。
我有一个数据框,其中包含多个用于单词形式标签的列,如这个模拟示例中所示:
df <- data.frame(
w1 = c("NN1", "NN0", "AJ0", "AJC", "NP0", "VVZ"),
w2 = c("NN0", "NN2", "AJC", "NN0", "VBN", "NN1"),
w3 = c("AJ0", "NN2", "NP0", "VVG", "AJS", "NN1"),
w4 = c("NN2", "NN2", "AJ0", "AJ0", "AJS", "VVD")
)
我需要使用更广泛的描述对标签进行重新分类,例如单数名词的“名词”(标记为“NN1”)、复数名词(“NN2”)、专有名词(“NP0”)等。之前建议的一种解决方案是,基于dplyr
:
df %>% mutate_all(funs(case_when(
grepl("^N", .) ~ "noun",
grepl("^V", .) ~ "verb",
grepl("^A", .) ~ "adjective",
TRUE ~ "Other"
)))
它当时运作良好,但现在不再有效;它抛出这个错误:
Error in mutate_impl(.data, dots) :
Evaluation error: `as_dictionary()` is defunct as of rlang 0.3.0.
Please use `as_data_pronoun()` instead.
任何人都可以帮忙:需要做什么才能让代码再次工作?
解决方案
推荐阅读
- sql - SQL finding the sum of subrange of values
- flutter - 无法将flutter现有项目更改为flutter web
- javascript - Axios 取消令牌在实时搜索反应应用程序中不起作用
- html - 使范围滑块垂直
- firebase - Cloud Firestore 基于角色的访问
- javascript - 在url地址开头发送带有api的xhr
- python - PowerScan 发送蜂鸣信号
- amazon-web-services - AWS Glue 中用于历史数据的 ETL 作业
- python - 如何在 PYOMO Python 中考虑 model.Var() 的 5 个最高值进行优化
- amazon-s3 - 我需要在 s3 存储桶中配置 CORS 我拥有的代码不是有效的 JSON