r - 替换包含特定子字符串的变量
问题描述
我正在尝试整理包含一列字符串的数据集。大多数字符串是同一个词的排列(例如“banana_test”、“banana2”等)。我想用原始单词替换所有这些排列,即“香蕉”。
我尝试使用 dplyr 包中的“包含”命令来执行此操作。
fruit <- c("apple", "pear", "banana", "pear", "apple", "bad banana")
replace(fruit, contains("banana"), "banana")
我没有用“香蕉”替换“坏香蕉”,而是收到以下错误消息: 错误:没有注册 tidyselect 变量
我能做些什么来解决这个问题?
解决方案
contains()
函数 from是一个选择助手,dplyr
实际上来自 tidyeselect now-a-days(请参阅 参考资料?select_helpers
)。它旨在用于查找列名,而不是通用字符串匹配。tidyverse 中更好的选择可能str_which
来自stringr
replace(fruit, str_which(fruit, "banana"), "banana")
推荐阅读
- node.js - WebRTC 更改默认 (500kbps) 带宽 NodeJS - Kurento 媒体服务器 (KMS)
- c# - C# 和 TPM 函数
- flutter - Flutter:当没有链接时,如何不显示不占用空间的小部件?
- c++ - 从父类对象指针向量访问派生类属性
- c - 为什么我会收到此错误 Makefile: No rule to make target 'timer.c', required by 'timer.o'. 停止
- c# - 使用 Entity Framework Core 来自数据库的 2x 多对多队列
- performance - Kafka JDBC 源连接器性能问题 - 永久充分使用 CPU
- java - 如何在 Java 中绘制一个更改每个循环内容的字符串数组?
- node.js - npm start 挂起,不同步更改(WSL 上的 create-react-app)
- java - 为什么使用数组比使用地图记忆更快?