问题标签 [magrittr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
66 浏览

r - 在 magrittR 管道中使用函数之前,如何实现函数的部分应用?

我想要管道的可参数化部分。

这是我要编写的代码:

显然它不起作用,因为%>%设置dadd_n.

0 投票
1 回答
152 浏览

r - 使用 %>% 动态指定因子水平

我试图找到一个单行选项来在 %>% 命令序列中分配因子级别。

我这样做的策略是运行一系列函数,.以产生我感兴趣的有序因子水平。这会导致 "Error: 'match' requires vector arguments",而在不使用 的情况下进行评估。产生适当的水平。

谁能想到更好的方法来做到这一点,或者阐明我的错误?

0 投票
4 回答
3780 浏览

r - 对于高基数分组,为什么使用 dplyr 管道 (%>%) 比等效的非管道表达式慢?

我认为一般来说使用%>%不会对速度产生明显影响。但在这种情况下,它的运行速度要慢 4 倍。

不带管道:

带管:

为什么%>%在这种情况下慢得多?有没有更好的方法来写这个?

编辑:

我使数据框更小,并将 Moody_Mudskipper 的建议纳入基准测试。

0 投票
1 回答
255 浏览

r - 使用 magrittr、dplyr 和 purrr 有条件地将函数应用于 R 中的分组数据帧

我想使用 magrittr、dplyr 和可能的 purrr 的简洁性将一个大型数据帧(具有许多不同类型的变量)拆分为一个变量x,然后有条件地将不同的函数x应用于每个组,并将组内的行应用于第二个变量y

以数据框为例df <- data.frame(a, b, x, c, d, y),其中x因子 ( foo, bar)y是数字。我可以用一个无管道的工作流来做我不雅地描述的事情,因此:

我想用 dplyr 重写它并将它添加到一个长管道中,df但是我所有的组合尝试mutate都失败了;尝试将 purrr 与匿名函数合并,以及.sapplydoby_slicedmap

非常感谢您的建议。

0 投票
1 回答
600 浏览

r - 管道 (%>%) ggplot2 像 ggvis

当我使用 将表格和图形集成到文档中knitr时,添加代码使其更具可重复性和趣味性。

通常dplyr和的组合ggvis可以制作具有相对清晰代码的图(使用magrittr管道运算符%>)。

问题是 ggvis 图:

ggvis

看起来不像 ggplot2 图那么漂亮(我知道,因式分解cyl):

在此处输入图像描述

但是,因为ggplot2我们需要:

我的问题是这从管道切换%>%+管道。我知道这是一个非常轻微的痒,但我更喜欢使用:

有没有办法修改的行为,ggplot2以便这会起作用?

附言。我不喜欢使用magrittr's的想法,add()因为这再次使代码更难以阅读。

0 投票
2 回答
2583 浏览

r - Combining pipes and the magrittr dot (.) placeholder

I am fairly new to R and I am trying to understand the %>% operator and the usage of the " ." (dot) placeholder. As a simple example the following code works

However the following code fails

where I am now piping the placeholder into the is.data.frame method.

I am guessing that it is my understanding of the limitations/interpretation of the dot placeholder that is lagging, but can anyone clarify this?

0 投票
1 回答
753 浏览

r - 如何嵌套多个管道 magrittr

这开始是一个审美问题,但后来变成了一个功能性问题,特别是关于 magrittr。

我想添加一个手动输入到已经存在的data_frame :

我在矩阵中编写新车以“提高易读性”,因此需要设置列名以将其绑定到cars_0.

如果有人像我一样喜欢 magrittr,他们可能想先展示new_cars并通过管道发送给set_colnames

或者为了避免重复,他们会想指出cars_0并将其传递给rbind

然而,一个人不能同时做这两个,因为对于谁在被管道传输存在混淆

我的问题:有没有办法区分通过管道传输的两个参数?

0 投票
3 回答
139 浏览

r - Magritttr + lapply 第一个参数不是 LHS

我想通过 lapply 将数据框传递给%>%,但我需要能够访问列的名称,所以我的 lapply 参数是这样的:

但是,当我尝试这样做时,出现以下错误:

据我所知,R 和 lapply 不喜欢1:length(.). 我想一个有效的选择是打破链条,但我想学习如何正确地做到这一点。

0 投票
3 回答
198 浏览

r - 用于 !(或任何逻辑运算符)与 %>% (magrittr) 产生意外的输出

我遇到过一种情况,%>%当与!. 考虑以下代码:

好吧,这没什么好奇怪的。但是,如果我尝试使用%>%奇怪的东西来缩短它:

TRUE?? 不是我所期望的——它应该是20

如果我删除它,它会按预期!给我:0

如果我添加括号它可以工作:

并将!其视为功能有效:

在做什么!is.na(x) %>% sum,为什么它返回TRUE而不是20

编辑:其他逻辑运算符产生类似的行为:

0 投票
1 回答
1094 浏览

r - 将数据帧通过管道传递给其参数管道点的函数

如何将数据帧通过管道传递给参数管道点的函数?

rep(xi, length.out = nvar) 中的错误:尝试复制“closure”类型的对象

另一个例子:

具有以下组件的功能序列:

  1. 安排(。,制造商)

使用“功能”来提取各个功能。