我应该避免使用管道运算符对包进行编程吗?

2024-04-10

有没有客观原因管道操作员 https://cran.r-project.org/web/packages/magrittr/vignettes/magrittr.html来自 R 包magrittr, 例如%>%,当我在 R 中编写包时应该避免吗?

更具体地说,我想知道使用管道运算符是否可能会导致编码冲突或(正面或负面)影响性能。我正在寻找此类案例的具体实例。


与所有用 R 编写的高级函数一样,%>%会带来很多开销,因此不要在循环中使用它(这包括隐式循环,例如*applyfamily,或者像这样的包中的每组循环dplyr or data.table)。这是一个例子:

library(magrittr)
x = 1:10

system.time({for(i in 1:1e5) identity(x)})
#   user  system elapsed 
#   0.07    0.00    0.08 
system.time({for(i in 1:1e5) x %>% identity})
#   user  system elapsed 
#  15.39    0.00   16.68 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我应该避免使用管道运算符对包进行编程吗? 的相关文章

  • 对 data.table 中的列表列执行操作

    假设我有一个data table 例如dt lt data table foo list 1 3 4 6 bar c 2 7 如何使用 dt 框架对 foo 向量列表执行操作 操作可能是将 bar 添加到 foo 返回列表 3 5 11 1
  • 如何在ubuntu的conda环境中更改Rstudio中的R版本

    我在基本系统中安装了 R 4 3 和 Rstudio 在 conda 环境中安装了旧版本的 R 4 2 3 命令which R返回环境中安装的 R 的目录 home 用户 miniconda3 envs anndata2ri pip bin
  • 从日期变量创建月末日期

    我有一个包含日期变量的大型数据框 它反映了该月的第一天 有没有一种简单的方法来创建代表该月最后一天的新数据框日期变量 以下是一些示例数据 date start month seq as Date 2012 01 01 length 4 by
  • 如何对数字进行四舍五入并使其显示零?

    R 中将数字四舍五入到小数点后 2 位的常用代码是 gt a 14 1234 gt round a digits 2 gt a gt 14 12 但是 如果该数字的前两位小数位为零 则 R 会在显示中抑制零 gt a 14 0034 gt
  • R中的字典数据结构

    在 R 中 我有 例如 gt foo lt list a 1 b 2 c 3 如果我输入foo I get a 1 1 b 1 2 c 1 3 我怎样才能看透foo仅获取 键 列表 在这种情况下 a b c R 列表可以具有命名元素 因此可
  • 使用officer R导出时如何提高ggplots的分辨率

    我想将图表导出到 PPT 并使用Officer 包来实现相同的目的 但是 图表的默认分辨率较低 我想更改它 我目前正在使用以下电话 ph with gg p1 type chart res 1200 其中 p1 是 ggplot 对象 运行
  • 访问或解析 R 中的 summary() 中的元素

    我运行以下 R 命令来进行 Dunnett 测试并获取摘要 如何访问下面线性假设的每一行 这是摘要输出的一部分 基本上我不知道摘要的结构 我尝试使用名称 但它似乎不起作用 因为我没有看到任何命名属性来提供这一点 library multco
  • 实现 XGboost 自定义目标函数

    我正在尝试使用 XGboost 实现自定义目标函数 在 R 中 但我也使用 python 所以有关 python 的任何反馈也很好 我创建了一个返回梯度和粗麻布的函数 它工作正常 但是当我尝试运行 xgb train 时它不起作用 然后 我
  • picker输入字体或背景颜色

    我在闪亮的仪表板中使用 pickerInput 这很好 除了一个问题 背景颜色和字体颜色太相似 使得过滤器选择难以阅读 有什么办法可以改变背景或字体颜色吗 如果可能的话 我想继续使用 pickerInput 但如果有一个带有 selectI
  • 如何在 R 中执行近似(模糊)名称匹配

    我有一个专门用于生物学期刊的大型数据集 该数据集是由不同的人长时间编写的 因此 数据不采用单一格式 例如 在 作者 栏中我可以找到John Smith Smith John Smith J等 但它们是同一个人 我连最简单的动作都做不了 例如
  • 我可以使用哪个 R 函数来查找两条线的交点?

    我刚刚研究了 stackoverflow 上所有的 在 R 中寻找交集 问题 它们要么是关于曲线 要么是关于分布像这个 https stackoverflow com questions 20519431 finding point of
  • 如何在 R 中的 for 循环内将值存储在向量中

    我正在开始使用 R 但我对以下问题感到非常沮丧 我试图将 for 循环内完成的某些计算的值存储到我之前定义的向量中 问题是如何进行索引 因为for循环迭代代码的次数取决于用户的输入 所以变量i不一定要从1开始 它可以从80开始 for举个例
  • `dplyr::_join` 函数的命名向量“by”参数[重复]

    这个问题在这里已经有答案了 我正在写一个函数dplyr join两个数据框by不同的列 第一个数据帧的列名称动态指定为函数参数 我相信我需要使用rlang准引用 元编程 但未能找到可行的解决方案 我很感激任何建议 library dplyr
  • R Shiny:如何将无功值从闪亮模块返回到主服务器功能?

    我有一个简单的玩具示例 它使用 add removeBtn 模块在 第一个 模块中添加和删除 UI 我需要跟踪单击 添加 删除 的次数 如果我不使用模块 这很容易 但我试图在嵌套模块的上下文中执行此操作 代码如下 但基本上 我似乎无法访问主
  • 如何按定义的顺序将图像合并到一个文件中

    我有大约 100 张图像 png 我不想手动执行此操作 而是希望将它们按照定义的顺序 基于文件名 并排放置在一个 pdf 中 每行 12 个图像 有人有什么建议吗 我按照下面托马斯告诉我的方法尝试了 它把它们贴在旁边有一个黑边 我怎样才能去
  • 在 R 中提取 data.frames 列表的名称以及 data.frame 中的值

    在下面的代码中 j是 data frames 的命名列表 我想知道是否有办法 a 提取变量的数值 即one short and one long 在 data frames 内并附加它们的相关名称 即 AAA or BBB or CCC 到
  • 在网格中制作一个矩形图例,并标记行和列

    我有一个 ggplot 我将因子映射到填充和 alpha 如下所示 set seed 47 the data lt data frame value rpois 6 lambda 20 cat1 rep c A B each 3 cat2
  • 在包加载之前如何知道 R 中特定函数属于哪个包?

    例如 我知道许多流行的功能 例如tbl df 我通常不记得它属于哪个包 即data table or dplyr 所以我必须始终记住并加载一个包 但我做不到 tbl df除非我加载了正确的包 在 R 控制台本身加载或安装包之前 有没有办法知
  • R:按组,测试一个变量的每个值是否存在于另一个变量中

    我有一个数据框架 结构如下 a lt c 1 1 1 2 2 2 3 3 3 3 4 4 b lt c 1 2 3 1 2 3 1 2 3 4 1 2 c lt c NA NA 2 NA 1 1 NA NA 1 1 NA NA df lt
  • 需要在R中跳过不同数量的行

    我正在使用以下代码来处理我的数据 但最近我意识到使用skip 27 在数据开始之前跳过存储在我的文件中的信息 不是一个好的选择 因为每个文件中要跳过的行数不同我的目标是读取存储在多个文件夹中的各种txt文件 并非所有文件都有相同的列数 列的

随机推荐

  • 在 ubuntu 中使用 Gunicorn:最新的 Docker 镜像

    我正在尝试在 Ubuntu 最新的 Docker 映像中设置 Gunicorn 服务器 在 Docker 上启动时 我有以下输出 2020 08 01 14 12 38 0000 6 INFO Starting gunicorn 20 0
  • 使用弹出的 Angular 4 应用程序进行生产编译会生成大文件

    ng build prodAngular CLI 命令在 Angular4 应用程序中生成高度压缩的 JavaScript 文件 当使用以下命令弹出应用程序时ng eject命令 Angular CLI 命令消失了 我们只剩下 npm 脚本
  • 如何将 PDFBox 添加到 Android 项目或建议替代方案

    我正在尝试打开现有的 pdf 文件 然后从 Android 应用程序中将另一个页面添加到 pdf 文档中 在添加的页面上 我需要添加一些文本和图像 我想尝试一下 PDFBox 由于许可条款 价格的原因 iTextPDF 等其他解决方案不适合
  • Blind 在动画期间隐藏 div

    我有以下内容 http jsfiddle net 4QF4C 14 http jsfiddle net 4QF4C 14 为什么动画过程中红色方块隐藏在黑线后面 动画完成后又显示出来 我怎样才能解决这个问题 HTML div class c
  • 创建命名空间后自动创建 Kubernetes 资源

    我有2个团队 开发人员 他们每次部署应用程序的分支 标签时都会创建一个新的 Kubernetes 命名空间 ops 它们通过 集群 角色和 集群 角色绑定管理对集群的访问控制 问题是 在 ops 创建 RBAC 资源之前 devs 无法 k
  • UIL,毕加索 - 停止滚动时适配器中的图像总是重新加载

    I have ListView with text and large image from internet My image item has fit width and wrap content height I tried to d
  • ValueError:在PIL中混合图片时图像不匹配

    我一直在用 python 搞乱 看看是否可以将两张图片 混合 在一起 我的意思是 图像是透明的 您可以同时看到两张图片 如果这仍然没有意义 请查看此链接 只有我会混合图片和图片而不是 gif https cdn discordapp com
  • 通过 JavaScript 动态创建和打印 h1 标签

    我需要能够在 JavaScript 中创建一个函数 我需要做的就是输入 h1 hello 它就会打印 hello 我想避免这种方法 function h1 text document write h1 text h1 这就是我所拥有的 fu
  • 使用拦截器延迟所有请求

    出于调试目的 我想延迟all请求 以便我可以模拟加载资源实际上需要时间 我想这可以在拦截器中以某种方式完成 我确实设法推迟single现在请求 const delay milliseconds gt new Promise resolve
  • GitHub 对 SSH 部署密钥的限制

    GitHub SSH 部署密钥是否有任何限制 假设我需要将 2000 个甚至 4000 个部署密钥添加到 git 存储库中 这可能吗 或者我会在某个时候达到极限吗 原因是我们有 4000 台设备需要配置 我们希望控制哪些设备可以访问存储库
  • 删除字符“.”之前的字符

    如何有效地删除字符串中位于字符 之前的所有字符 Input 美洲美国 Output USA 您可以使用IndexOf method http msdn microsoft com en us library kwb0bwyd v VS 10
  • 有没有 View.GetOutline() 的替代方案可以提供更好的轮廓?

    返回的大纲View GetOutline 方法并不完全对应于可见绘图 它返回的内容比 SolidWorks GUI 显示的选择轮廓要多一些 下面的屏幕截图显示了选择轮廓 浅蓝色虚线矩形 和由返回的轮廓的对角线View GetOutline
  • sem_init(…): value 参数有什么用?

    在类中 我们必须使用信号量来完成线程的工作 sem init 的原型 和头文件 如下 int sem init sem t sem int pshared 无符号 int 值 但我不明白 value 变量的用途 据 opengroup or
  • 关闭 Android 中的自动对焦

    这是在我的应用程序代码中关闭相机自动对焦的任何方法 我想检查如果手机没有自动对焦功能 我的扫描仪如何工作 但我的手机有该功 能 Use FOCUS MODE INFINITY http developer android com refer
  • MojoExecutionException:使用 Android 的 Maven

    我将 Android Studio 与 Maven 3 1 1 一起使用 在包目标中它因 MojoExecutionException 崩溃 我读了很多帖子 但无法得到解决方案 错误 生成源时出错 org apache maven plug
  • 将 MySQL Workbench 链接到我的远程服务器

    我刚刚下载了 MySQL Workbench 但我不太明白如何将其与远程服务器上的数据库同步 工作台要求 主机名 因此我提供了远程服务器的主机名 我指定端口 3306 然后我提供一个用户名 这是我登录 PhpAdmin 时使用的用户名 我应
  • Twilio 通过 REST API 挂断呼叫不起作用?

    当呼叫状态为排队状态 正在振铃或已发起 时 如何挂断电话 下面的代码对呼叫没有任何影响 呼叫会继续响铃 直到听筒接听 有时 当座席意识到他们拨打了错误的号码时 他们需要一种方法在响铃过程中挂断呼叫 PHP code client gt ca
  • Android studio中的文件路径

    我正在尝试发送带有附件的电子邮件 除了附加文件之外 一切正常 调用方法时 它显示 java io FileNotFoundException 虽然我手动插入精确路径 文件 存储 模拟 0 Android data com example a
  • 查找一对 QuadCurve2D 的交集

    有没有一种简单的方法来近似两个实例的点 如果有 QuadCurve2D相交 也就是说 我如何计算图中红点的坐标 没有明显的方法QuadCurve2D去做这个 注意 这些点并不准确 因为我已经为图表手动调整了它们 另请注意 缺失 的第四个点
  • 我应该避免使用管道运算符对包进行编程吗?

    有没有客观原因管道操作员 https cran r project org web packages magrittr vignettes magrittr html来自 R 包magrittr 例如 gt 当我在 R 中编写包时应该避免吗