根据与 dplyr 的部分匹配替换数据框中任意位置的整个字符串

2024-02-16

我正在努力寻找合适的 dplyr 代码来使用grepl或等效的方法来替换整个数据帧中的值。

即:任何包含“mazda”的单元格都应将其全部内容替换为新字符串“A car”

经过大量在线搜索后,我最接近的是:

重点是将其应用于所有列。

library(dplyr)
mtcars$carnames <- rownames(mtcars)  # dummy data to test on

这行代码可以使整个刺痛完全匹配:

mtcars %>% replace(., (.)=='Mazda RX4', "A car")

但出于某种原因,我的 grepl 尝试将整个列替换为“A car”。

mtcars %>% replace(., grepl('Mazda', (.)), "A car")

library(dplyr)
mtcars %>% mutate_if(grepl('Mazda',.), ~replace(., grepl('Mazda', .), "A car"))

首先要了解你为什么replace未能看出两者之间的区别'Mazda RX4'==mtcars and grepl('Mazda', mtcars),自从你使用grepl, replace uses

Replace 将 x 中的值替换为 list 中给定的索引值。如果需要的话,values中的值会被回收。

现在,如果我们确保使用以下方法获得合适的输出,我们可以使用您的第一种方法sapply例如

mtcars %>% replace(., sapply(mtcars, function(.) grepl('Mazda',.)), "A car")

Update:

要替换我们可以使用的多种模式stringr::str_replace_all

library(stringr)
library(dplyr)
mtcars %>% mutate_if(str_detect(., 'Mazda|Merc'), 
                    ~str_replace_all(., c("Mazda.*" = "A car", "Merc.*" = "B car")))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据与 dplyr 的部分匹配替换数据框中任意位置的整个字符串 的相关文章

  • dplyr:带引号变量名的 mutate 的标准评估

    我将如何使用mutate 我的假设是我正在寻找标准评价就我而言 因此mutate 但我对此并不完全有信心 当使用接受变量名列表的函数时 如下所示 createSum function data variableNames data gt m
  • R 带有列和行的分面 qqplots

    我需要使用按行和列的构面创建 qqplot 我了解如何用列和行绘制分面图 但我不确定如何设置我的数据 最终 我想按列和行对数据集进行分组 然后按升序对 建模 结果和 观察到 结果进行排序 同时添加带有 行 组的列和带有 列 组的列 我一直在
  • 关于子组的新列和另一列中的百分比范围

    我有一个如下所示的示例 df df test lt data frame Group Name c Group1 Group2 Group1 Group2 Group2 Group2 Group1 Sub group name c A A
  • 在 R 中安全地计算算术表达式?

    Edit 好吧 由于似乎有很多混乱 我将稍微简化一下问题 您可以尝试回答下面的原始问题 或者您可以解决此版本并忽略该行下面的所有内容 我的目标是采用任意表达式并在极其受限的环境中对其进行评估 该环境将仅包含具有以下类型值的变量 数值向量 接
  • 配置 fix() 和 edit() 以从 R/RStudio 在 Notepad++ 中打开

    当我在 RStudio 或 RGUI 中执行此操作时 fix SomeFunction 或使用edit 我可以在记事本中看到该函数的代码 有什么方法可以更改此设置 以便代码预览在 Notepad 中打开 而不是在普通的旧记事本中打开 同样
  • 在 R 中使用深度网络和 MNIST 数据读取手写数字第 3 部分

    我尝试编写一个基于深度网络的程序来读取手写数字 我在 Youtube 上找到了一个代码 https www youtube com watch v 5bso 5X7Zu4 https www youtube com watch v 5bso
  • 使用 2 个向量参数翻转函数

    我想对需要 2 个向量参数的函数应用滚动 这是使用 data table 的示例 不起作用 library data table df lt as data table cbind data frame x 1 100 y 101 200
  • data.table 的包装函数

    我有一个已经使用 data frame 上下文编写的项目 为了缩短计算时间 我尝试利用 data table 的速度 我的方法是构造包装函数 读取帧 将它们转换为表 进行计算 然后转换回帧 这是一个简单的例子 FastAgg lt func
  • 使用 roxygen2 导入两个同名函数

    我是 CRAN 包的维护者 在加载时收到以下消息 checking whether package qdap can be installed 10s 10s WARNING Found the following significant
  • 正则表达式提取美国邮政编码,但不提取假代码

    使用 XML 包和 XPath 从网站上抓取地址 有时我只能得到一个嵌入了我想要的邮政编码的字符串 提取邮政编码很简单 但有时会显示其他五位数字的字符串 以下是 df 中问题的一些变体 zips lt data frame id seq 1
  • 行方向变异的有效方法

    我有两个数据框 dfUsers and purchases使用以下代码生成 set seed 1 library data table dfUsers lt data table user letters 1 5 startDate sam
  • 在 R 的替换命令中取消引用字符串

    我想知道是否可以unquote通过替换命令传递给表达式的字符串 具体来说 我使用 dplyr 从数据框中过滤和选择 gt w subject sex response 1 1 M 19 08 2 2 M 16 46 6 6 M 23 60
  • R 中具有 p 值的相关矩阵

    假设我想要传导相关矩阵 library dplyr data iris iris gt select if is numeric gt cor y iris Petal Width method spearman gt round 2 现在
  • 使用 R Markdown 文档作为函数源

    我正在研究 R Markdown 来记录我经常使用的功能 我会将它们放入 R Markdown 文件中以记录它们 然后如果我几个月后回来查看它 就能够阅读我在函数背后的想法 我的问题是 如果我开始一个新的 R 项目 是否可以获取 r mar
  • 如何创建 highcharter 事件函数以在 Shiny R 中创建“下拉函数”

    我正在建造一个shiny应用程序 我想要完成的事情之一是创建一个下拉菜单 我想将劳动力变量绘制为不同级别的年份变量的函数 请参阅下面的示例数据框 year level 2 level 3 labour 1 2013 10 101 1 2 2
  • 构造奎因(自我复制功能)

    有没有人构建过 quine 生成自己源文本的副本作为其完整输出的程序 http www nyx net gthompso quine htm http www nyx net gthompso quine htm 在 R 中 quine 标
  • 基本 dyplr 函数给出错误:“check_dots_used”

    试图找出为什么我会收到此错误 以前从未见过 谷歌没有帮助 check dots used action warn 中的错误 未使用参数 action warn 我在下面的非常基本的试验中收到错误 而且在 group by count 中也收
  • ggplot2 中的中心图标题

    这个简单的代码 以及今天早上我的所有脚本 已经开始在 ggplot2 中给我一个偏离中心的标题 Ubuntu version 16 04 R studio version Version 0 99 896 R version 3 3 2 G
  • 按名称包含在单个对象中的多个列对 data.frame 进行排序?

    我想排序一个data frame由多列组成 理想情况下使用基础 R 无需任何外部包 尽管如果有必要 就这样吧 读过如何按列对数据框进行排序 https stackoverflow com questions 1296646 how to s
  • 如何在闪亮的observeEvent中监听多个事件表达式

    我想要两个不同的事件触发观察者 有人建议here https stackoverflow com questions 34731975 how to listen for more than one event expression wit

随机推荐

  • 施特拉森的矩阵乘法在哪里有用?

    Strassen 的矩阵乘法算法仅比传统算法略有改进O N 3 算法 它具有更高的常数因子并且更难以实现 鉴于这些缺点 strassens 算法实际上有用吗 它是否在任何矩阵乘法库中实现 此外 矩阵乘法在库中是如何实现的 一般来说 施特拉森
  • 重试 MySQL / SQLAlchemy 的死锁

    我已经搜索了很长一段时间 但找不到解决我的问题的方法 我们在项目中将 SQLAlchemy 与 MySQL 结合使用 并且多次遇到可怕的错误 1213 尝试获取锁定时发现死锁 尝试重新启动事务 在这种情况下 我们最多尝试重新启动交易三次 我
  • Selenium - 使用透明代理的 MoveToElement()

    我有元素 public ArticlePage PageFactory InitElements Browser driver this FindsBy How How Id Using someId private IWebElement
  • 命令行无法识别 Node-sass

    我正在尝试设置node sass 遵循CSS Tricks 说明 https css tricks com why npm scripts Node 和 npm 已正确安装 node sass 安装也正常 当我去跑步时node sass o
  • 如何设置对 Azure 应用服务的 FTP 访问?

    我使用 Visual Studio 将我的网站 发布 到 Azure 看起来工作正常 现在我希望能够将文件通过 FTP 传输到此应用程序服务 但是 如何在此应用服务中设置 FTP 凭据 以便可以通过 FTP 进行身份验证 我本来希望在 部署
  • 创建新的 AVD-CPU/ABI 字段显示“未安装系统映像”

    我正在创建一个新的 AVD 我用 ARM CPU 镜像创建了一个 但大约 45 分钟后仍无法启动 所以我删除了它并下载了 Intel x86 Atom 映像 创建 AVD 时 选择 CPU 的字段变为非活动状态 并显示 未为此目标安装系统映
  • Powershell StreamReader - 如何等待新文件可读

    我的脚本通常假设存在一个 txt 文件 其中包含有助于其更好运行的设置 但是 如果该脚本不存在 它会创建一个本地文件来保存这些设置 我意识到这没有逻辑need然后阅读此文件 但我想了解为什么我不能 void System IO File C
  • 使用 Polymer 和 app-route 每次点击时重新加载页面

    我正在使用 app route 和iron pages 以及纸质工具栏来显示我的视图 就我的一个观点来说 main view 显示随机选择的图像 该图像每次加载页面时都会发生变化 每次main view从工具栏中选择后 页面应重新加载 以便
  • 粘性元素不与同级元素一起向上滚动?

    这是我之前问题的延伸 如何使元素具有粘性但可与同级元素一起滚动到其完整 可变 高度 https stackoverflow com questions 75469958 how to make an element sticky but s
  • 为什么 HTTPS 请求会产生 SSL CERTIFICATE_VERIFY_FAILED 错误?

    这是我的Python代码 import requests requests get https google com 这是错误 requests exceptions SSLError HTTPSConnectionPool host go
  • XCTest 的 @testable 幕后发生了什么?

    我知道 testable import MyModule 提供探索非公开成员的能力MyModule来自 test 使用 testTarget 构建 模块MyModuleTests 我的 非测试 模块需要相同的功能 不在生产中 仅在调试模式下
  • TF 错误:没有剩余的更改需要签入

    我们有一个 NAnt 脚本来更新 TFS 中的 预构建 程序集 作为我们的 TeamCity 构建项目之一 该构建由其他构建触发 它执行 TF 签出 移动一些文件 然后执行 TF 签入 相关目标 tf解析为TF exe的路径
  • 识别任意日期字符串[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我需要能够识别日期字符串 如果我无法区分月份和日期 例如 12 12 10 也没关系 我只需将字符串分
  • 从命令行、Linux 中使用函数执行 python 脚本

    我有一个名为convertImage py的python文件 在文件中我有一个脚本可以根据我的喜好转换图像 整个转换脚本设置在一个名为convertFile fileName 的函数内 现在我的问题是我需要从linux命令行执行这个pyth
  • python - django:为什么我收到此错误:AttributeError:'method_descriptor'对象没有属性'today'?

    我有以下 python 代码 from django db import models from datetime import datetime class Poll models Model question models CharFi
  • ASP.NET 随机丢失会话值

    我已经为此寻找答案很长一段时间了 因为它继续困扰着我 我们在会话状态 InProc 中存储用户登录信息和有关用户当前活动的其他数据 我经常在尝试使用会话变量之一时遇到空引用异常 它发生在随机页面上 具有随机会话变量 我修改了 web con
  • 单个页面上有多个 FullCalendars

    我想在同一页面上添加多个 FullCalendars 可选 用于安排不同类型的事件并将信息保存在数据库中 但查看演示 示例代码 似乎我只能在每页添加单个日历 因为它是由 div div 您能否告诉我是否有办法实现此目的 以便当用户在同一页面
  • rvest::html_text 和 RSelenium::getPageSource 有什么区别?

    我正在抓取一些网页 我注意到 rvest read html 然后 html text 提供的结果与 RSelenium getPageSource 提供的结果不同 更具体地说 当涉及下拉菜单时 使用 html text 只会提供选项的名称
  • 为什么我的 postgres 表在更新后变得更大?

    我有一个表 聚集在两列上 销售点和产品 ID 唯一的索引位于这两列中 并且表聚集在这些列上 我每周都会更新表中的其他列 当我这样做时 表和关系的大小增加了大约 5 倍 然后 我对表进行聚类 大小恢复到更新前的大小 这对我来说似乎很奇怪 如果
  • 根据与 dplyr 的部分匹配替换数据框中任意位置的整个字符串

    我正在努力寻找合适的 dplyr 代码来使用grepl或等效的方法来替换整个数据帧中的值 即 任何包含 mazda 的单元格都应将其全部内容替换为新字符串 A car 经过大量在线搜索后 我最接近的是 重点是将其应用于所有列 library