问题标签 [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 回答
63 浏览

r - dplyr::across() 没有从管道中找到所有内容() 或点

遵循以下文档?across

我用作everything()LHS 的参考。

然而,似乎也everything()没有从管道接收 LHS 对象。.

我错过了什么?

重复:

0 投票
1 回答
116 浏览

r - 根据位置改变特定列

我试图将数据框特定列中的所有负值转换为 0。例如,我将如何将 mtcars 数据中第 3:5 和第 8 列中的负值转换为零?

非常感谢您的帮助!

0 投票
1 回答
591 浏览

r - 在 dplyr 中汇总列表列,获取第一个值

我有一个大型数据框,其中包含一些我试图通过合并的半重复条目dplyr::summarise。这适用于数字、字符和逻辑列,但不适用于列表列。

按预期工作;

与我的数据集不同。上面通过展开 C 的范围来创建重复的行数,即组 A1 得到 1:3,A2 得到 2:4,A3 得到 3:6。对于我的数据:

一直有效,直到我包含 is.list 行,然后它中断:

错误:summarise()输入有问题..5。x 'names' 属性 [11] 必须与向量 [9] 的长度相同

有谁知道如何解决这个问题?分组时,希望列表项与其他列一样拆分,因此组 A1 的 C 值应该是

[ 1 ] 1 1 2 3

[[2]] 1 1 2 3

(第一个列表项是 R 中的方括号,但由于某种原因不在此处)

因此first(mydata$C[1:2])

1 1 2 3

看起来不错,我只需要将它发送到目标单元格。

我还需要以across这种方式明确地链接这些行吗?我试过了!is.numeric,也是is.POSIXct | is.character | is.logical | is.list

谢谢。相关地,如果有人知道如何创建不是很好的范围的列列表 - 我之前已经设法通过分组摘要来做到这一点,但是对于这个代表,我复制了R For Data Science example,但它似乎没有通用的,即如果您将 mydata 的最后一行更改为

那么 C1 将是 "c(1,2,3)" 而不是评估逗号分隔的术语,似乎不允许任何不是单个值或范围的东西?

干杯!

0 投票
1 回答
47 浏览

r - 为什么 cross() 不能正常工作?

我正在尝试了解如何使用该across()功能来进行replace _if, replace_at变体。但我不明白为什么这段代码不起作用。我已经检查了“colwise”小插图,但没有多大帮助。

#1 输出基本上是原始数据帧,没有任何修改,就好像代码没有做任何事情一样。

输出没有对原始df进行任何更改

#2 正在工作,但我正在尝试用mutate()and替换它across()

我想要的输出,但使用代码#1

0 投票
2 回答
6247 浏览

r - 使用 dplyr rename(across(

嘿,我正在尝试通过在新版本的 dplyr 中添加“Last_”来重命名一些列,但我一直收到此错误

这是我的代码

dplyr 版本:v1.0.2

0 投票
1 回答
1052 浏览

r - 如何在 dplyr 中引用其他列名

希望是一个简单的问题。我想使用 dplyr mutate across,并引用另一个静态列以用于所有 mutate 函数。

我想为基线上每天的变化创建一个新列“fc”。我想我可能需要 'sym' 和 !! 围绕基线使其工作,但还没有弄清楚。

给出错误

警告消息:在 format.data.frame(if (omit) x[seq_len(n0), , drop = FALSE] else x, : 损坏的数据帧中:列将被截断或用 NA 填充

更新:我在每一天的列中有一些缺失值,所以编辑了上面的代码。当输入中有 NA 时,如何在输出中加入 NA 而不是失败?

0 投票
3 回答
1186 浏览

r - mutate(across()) 中的 str_replace 匹配 cur_column 中的第 n 个字符

我的目标总结

我有以下数据框结构:

对于每一列,我想用字符“R”替换与列名的倒数第三个字符匹配的任何字符。

因此,使用上面的数据框我想得到这个:

例如,在第一列中,列名是col1_A.C,而A是倒数第三个字符。因此,所有A都被替换为R

到目前为止我的代码

为此,我生成了以下代码

不幸的是,生成的数据框 my.df2看起来与my.df完全一样,并且没有发生字符替换。虽然没有返回错误。

我已经通过以下方式测试了str_replace_all()方法,它适用于向量。我想在mutate(across())函数中解释str_replace_all()的方式中我缺少/不理解的东西。

我已经没有什么可能不起作用的想法了。我对 R 及其功能的理解不是很透彻,所以如果我遗漏了一些简单的东西,我深表歉意。我也搜索了类似的问题,但无济于事。

0 投票
2 回答
802 浏览

r - Dplyr cross + mutate + condition 选择列

我确信解决方案是一个班轮,但我正在用头撞墙。请参阅帖子末尾的非常短的代表;我如何告诉 dplyr 我只想将没有 NA 的列加倍?

非常感谢

reprex 包(v0.3.0.9001)于 2020 年 10 月 27 日创建

0 投票
3 回答
759 浏览

r - 如何将cross()函数与mutate()和case_when()结合起来,根据一个条件对多列中的值进行变异?

我有人口统计数据集,其中包括家庭成员的年龄。这是通过调查收集的,参与者可以拒绝提供他们的年龄。

结果是一个数据集,每行一个家庭(每个家庭都有一个家庭 ID 代码),并且列中有各种家庭特征,例如年龄。拒绝响应编码为“R”,您可以使用以下代码重新创建示例:

出于我们的意图和目的,我们将“R”重新编码为“-9”,以便我们随后可以将 AGE 列的格式转换为整数,并进行分析。我们通常在另一个软件中执行此操作,我的目标是在 R 中复制此过程。

我已经设法使用以下代码做到这一点:

鉴于这感觉很笨拙,我尝试使用 mutate_if 等找到解决方案,但读到这些已被 cross() 取代。因此,我尝试使用 cross() 复制此操作:

但我收到以下错误:

一直在努力解决这个问题并在谷歌上搜索了一段时间,但无法弄清楚我错过了什么。非常感谢您就如何使这项工作提供一些意见,请并谢谢您。

编辑:解决了!

0 投票
2 回答
100 浏览

r - 访问要在 dplyr::mutate 中使用的函数中的列名

使用 OECD 数据,我可以检索一个数据库,其中变量由它们的 ID 和带有相应标签的列表指定。这是一个重现数据结构的最小示例:

我想要做的是将变量 LOCATION 和 UNIT 中的 ID 替换dfdf_labels. 我定义了以下函数:

这样我就可以mutate按如下方式使用它:

但是,我无法跨多个列使用该函数。如果我尝试使用across

结果NA在受影响的列中。显然,问题在于deparse(substitute(.)),它没有捕获列名。不幸的是,查看诸如此类的类似问题没有帮助。