问题标签 [across]

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 回答
59 浏览

r - 如何使用 mutate 创建以向量命名的列?

我有一个tibble,我想使用字符向量向它添加列。向量的名称是新列的名称,新列应填充向量的值(每行重复)。使用 for 循环很容易做到这一点,但我试图了解它是如何across工作的,但我遇到了两个问题。

产生:

将最后一行替换为tib %>% mutate_at(all_of(names(cv)), myf)会产生相同的错误行为。

第一个问题是,mutate across由于某种我无法理解的原因,它似乎不喜欢制作新专栏。第二个问题是across不知道该怎么办myf。它似乎想要某种我不知道如何创建的闭包。(与 . 相同mutate_at。)我已经简要地查看了rlang但无法确定如何将常规函数转换为适当类型的对象。

0 投票
1 回答
215 浏览

r - 我们真的可以在 dplyr 中将两组多个变量传递给 mutate

这个问题虽然有三个答案,但让我怀疑,因为我正在考虑这个问题。虽然我知道问题可以通过其他方法解决(尤其是使用 purrr 或应用函数组),但我不确定它是否可以通过mutate(across(...? 为了清楚起见,我在这里重现了这个问题。注意:我不是在寻找它的答案,而只是对我怀疑两组变量是否实际上可以通过 mutate/across 传递的答案

有两组变量(一组不带后缀,一组带后缀avail)。

现在,如果我们想改变一组变量,比如说(a 和 b),但是通过将它们与另一组串联比较。也就是说,当 a 列发生变异时,它可能会使用其对应的变量 a_avail,而当 b 发生变异时,它会使用相应的变量b_avail,依此类推直到 n 个变量。

除了OP之外,我已经尝试过这些代码

或者

但无济于事。有人可以澄清一下是否可以通过 mutate(cross.. 语法来完成?

0 投票
4 回答
169 浏览

r - 如何系统地改变多列作为多列的函数?

我有一个随时间收集的一些变量的小标题。一个非常简化的 tibble 版本看起来像这样。

我想系统地创建一组新的变量varC,以便varC.t#= varA.t#/varB.t#其中#是 1、2、3 等(类似于在上面的小标题中设置列名的方式)。

我如何使用类似的东西mutateacross做到这一点?

0 投票
3 回答
24 浏览

r - 根据多个条件将 NA 值替换为预先存在的值

我正在处理以下数据。它与物品的尺寸和运送它们的盒子有关。

根据货运公司的说法,当其中一个箱列具有 NA 值时,这意味着该物品已经装在一个箱子中并且正在按原样发货。因此,我只需要用 Item_Height 替换缺失的 Box_Height。

我编写了以下代码来执行此操作:

我最终尝试测试一行何时缺少框尺寸并且没有缺少特定的项目尺寸,然后将缺少的框尺寸替换为项目尺寸。

我收到此错误:

这有点令人困惑,因为这就是我要替换的内容。

如果有人对如何正确执行此操作或我哪里出错有任何建议,我将非常感谢您的帮助。

0 投票
1 回答
156 浏览

r - 将 mutate 与多个函数一起使用

我试图在mutate(across(where(is.factor)))中提供两个函数来排序因子级别并删除未使用的级别。该代码似乎没有按预期工作。哪里可能出错了?

0 投票
1 回答
28 浏览

r - 跨多列在行内比较删除不匹配并创建新行

我正在尝试计算他相同的地址并按行分组。我相当接近,但在特定地址之间的列之间存在细微差别。目的是从行中删除任何不匹配的地址,并将它们作为新行添加到 df. 街道号或街区号之间通常存在差异。我已经从代码广告中提取了这些数字,我试图找到那些不匹配的数字,删除它们并创建一个新行并适当地更改计数。计数更改可以在之后进行,只需检查行中的非缺失。

该数据集实际上有 5000 行,一行最多 50 个建筑物。这是一个示例。

我正在考虑使用dplyrand acrosswithlength(unique)但不知道如何正确运行它,尤其是如何将mutate其转换为新行的长格式。

我喜欢的结果如下所示。(突变后不需要街道号码和名称

0 投票
5 回答
267 浏览

r - 使用 dplyr 汇总多个列的最小值和最大值范围

我正在尝试根据现有变量自动生成几个新变量。我想使用它们各自的最小和最大变量来获取“a”、“b”和“c”中的每一个的值范围。我正在模拟的数据来自聚合到区域统计数据的卫星传感器,这意味着每一行都是一个多边形特征。

这是一个要使用的玩具数据框:

这是执行此操作的手动方式:

如何使用 dplyr 以自动化方式完成此任务?我知道我的数据中会有 NA 值。

到目前为止,我有:

我试图定义一个范围函数:

我不知道选择后去哪里。我想我需要使用“mutate”或“cross”?

干杯和感谢!

0 投票
2 回答
46 浏览

r - 如何动态创建具有整洁评估的列?

我想使用特定模式创建变量。我需要在 mutate 函数中包含变量名称作为整洁的评估。我在下面做了一个自定义示例:

0 投票
3 回答
415 浏览

r - 组合:rowwise()、mutate()、cross(),用于多个函数

这在某种程度上与这个问题有关:原则上,我试图了解跨多个列rowwise的操作如何应用超过 1 个函数,如 ( ,等。) 工作。mutatemean()sum()min()

我了解到,across做这项工作,而不是c_across。我了解到该函数与不适用于数据帧的函数mean()不同,我们需要将其更改为可以使用 unlist 或 as.matrix 完成的向量 -> 从 Ronak Shah在这里了解 rowwise()和 c_across()min()mean()

现在以我的实际情况为例:我能够完成这项任务,但我失去了一个专栏dd在此设置中如何避免列松动。

我的df:

不工作:

工作,但我松散列d

0 投票
2 回答
50 浏览

r - R dplyr cross:动态指定函数 t.test 和 varTest 的参数

我正在跨语句写一些 dplyr。想要使用函数 t.test 和 varTest 创建一些 p 值。用于计算的 x= 列在 df_vars 中,mu= 和 sigma.squared= 参数值在 df_mu_sigma 中。

我需要的数据的硬编码版本在 df_sumry 中。如果在运行代码时变量名总是相同的,那么这样的事情就足够了。然而,事实并非如此。

我需要的非硬编码版本的开头是在 df_sumry2 中。但这并不能产生正确的结果,因为 mu= 和 sigma.squared= 的值不是动态指定的。df_sumry2 中只有前两个 p 值是正确的。在那之后它们总是错误的,因为代码总是使用 mpg 变量的值。

如何始终如一地为 mu 和 sigma.squared 插入正确的值?