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

r - 如何使用 cross/apply 函数将用户 ID 转换为新的标识值?

我有一个名为 user_id 的字符串格式的变量,例如: u:fwHX u:fwHX u:fwHX u:h_lx u:x_hi u:x_hi

它们都以“u:”开头,然后是一组字母。我想将每个唯一的 user_id 转换为以下格式的字符串:

user_id user_id u:fwHX U1 u:fwHX U1 u:fwHX U1 u:h_lx U2 u:x_hi U3 u:x_hi U3

这个新的 user_id 变量只能从 U1 到 U123(例如 U321、U312、U123 ......)。我必须使用cross和apply函数来解决它。感谢您的帮助!

0 投票
2 回答
28 浏览

r - 使用行谓词过滤列以仅保留负单元格值

我有兴趣减少一个非常大的相关矩阵以仅保留具有负关联的单元格和行。我已经使用df%>%filter_all(any_vars(.<0)) This is an example of the subset of I get later 减少了它。如何根据单元格内容选择列,而不必按名称选择:那些具有任何负值(D 和 E)的列?如果可能的话,我偏爱一个 tidyverse 的答案,但我会尽我所能。我想到了某种across()+ if_else(),因为我不介意将所有非负数都变成NA,但我想不通。

0 投票
2 回答
63 浏览

r - 新的 dplyr 版本 1.0.6(或者可能更早)似乎滥用了 plyr 。dplyr中的点突变

在我的 R 从 4.0 版更新到 4.1 版之前,我的以下代码运行良好,这是我为我正在开发的软件编写的辅助函数的一部分,我已经相应地替换了一些东西。没有上下文,这个功能似乎毫无意义,请不要专注于代码似乎试图在这里完成的事情。

我收到错误Error: Problem with `mutate()` input `..1`. i `..1 = dplyr::across(...)`. x 'list' object cannot be coerced to type 'double'

有人可以帮忙吗,在此先感谢!

0 投票
1 回答
41 浏览

r - 在 R 中的 mutate(across()) 中将 case_when 内的列与后续列联合的一般方法

我在 R 中有一个 df,这是一个简化版本:

我想将以“abc”开头的列与其后续列合并,使 df 看起来像这样:

我原来的 df 有更多的列,所以我正在寻找一种通用的方法。到目前为止,我的代码如下所示:

其中“后续列的内容”显然需要标识“.”之后的列。我不能成为第一个遇到这个问题的人,但我已经搜索了几个小时而没有找到任何地方......

0 投票
2 回答
93 浏览

r - Tidyverse:为什么选择助手通过管道传递到 cross() 时,当将助手放置在 cross 内时,会抛出有关外部向量的注释/警告/错误?

matches()将选择助手 ( , contains(), starts_with(), )管道(的值ends_with())到across()函数的行为与将选择助手放在括号内的行为不同across()

  • 为什么会这样?
  • 这是预期的行为还是错误?

复制

观察到的行为

最后一行导致 R 打印

请注意,此消息每个会话仅打印一次,因此您必须重新启动 R 才能再次看到它(除非有其他方法可以重置控制此打印的计数器)。

倒数第二个命令(带有matches()inside across())不会导致 R 打印注释。

预期行为

最后两个命令的行为相同。

附加信息

  • dplyr 版本:1.0.6
  • tidyverse 版本:1.3.1
0 投票
2 回答
253 浏览

r - 如何计算 R 中多列中唯一值的数量?

我有一个大数据集 - 23500 行。每行都有双重事件,我需要计算独特的事件。所以我需要为每行计算 30 列中的唯一事件 - 并为每行创建一个带有计数的新列。如何做到这一点最简单的方法?

0 投票
2 回答
44 浏览

r - 如何在多列中替换特定字符串?

如何将观察值(在 df1 中)映射到参考数据框(df2)中的正确单元格?单元格分布在(很多!)不同的列中,所以我不能在 df2$specific.columnn.name 上使用简单的 gsub

df1 包含观察值和 ID,df2 包含参考数据(ID 及其“一致性规则”)

我想用 DF1 中的观察值替换 df2 中的所有 ID。

结果应该是这样的,但是有 100 多列:

0 投票
1 回答
69 浏览

r - mutate(across()) 与外部函数引用当前数据帧中的其他变量而不传递第二个参数

我想使用mutate()多个变量across()

  1. 使用预先定义的函数
  2. 引用数据框中的其他变量,但
  3. 只需要一个参数(要变异的变量)和
  4. 不会对函数内部的这些变量的环境进行硬编码。

例如,此代码将变量添加x到每个yz

可以通过在全局环境中硬编码引用来避免将第二个参数传递给addxinside :mutate(across())dtmp$x

但是,这种解决方案是有风险的。例如,如果数据帧在mutate调用之前被分组(按第四个变量),它将无法按预期运行,因为dtmp$x它的长度与组的子集yz组内的长度不同。

似乎应该可以这样编写addx,这样我们就不必在内部传递第二个参数,也mutate(across())不必dtmp$x在函数定义中进行硬编码。这可能吗?换句话说,是否有一个something(x)可以使定义中的x表达式在addx()当前数据框的环境(如内部定义mutate(across(data,...)))中被评估?

解决方案的结构看起来像

示例用例:我们可能用来修改变量的一些函数可能会引用数据框中的许多其他变量,并且这些函数可能会在代码中多次使用。写出来arg1=var1, arg2=var2, arg3=var3,...是一团糟。

0 投票
4 回答
50 浏览

r - 给定条件强制字符串的函数

我只是想强制转换为数字as.numeric ——即,应用于任何以 a1作为第一个条目(即一个字符)的列。所以我希望转向:

进入

0 投票
2 回答
330 浏览

r - dplyr 中波浪号和点符号的含义

总结 我正在阅读一篇关于 dplyr 的跨函数主题的文章。看第一个使用例子,看到了之前没见过的操作符的使用。我不知道它们是否本质上是 dplyr 或其他包的一部分。无论哪种方式,我都不明白它们在代码中的用途。

代码示例:

结果是一个 1 x 8 的小标题。

我理解cross的第一个论点,令我困惑的是第二个论点。是什么~length(unique(.x))意思?.x 代码是什么意思?我知道长度被应用于 tibble 中的每个字符向量,但是“唯一”对代码片段有什么作用?

我自己尝试过什么来解决这个问题? 我曾尝试使用 Google 搜索 [R] ~ 运算符,但未收到相关结果。我还尝试了 rdrr.io、r-project.org 和 CRAN,但没有解决方案。以及 tidyverse.org 和 purrr 的文档——这是因为看到有人在他们的代码中使用相同的语法时引用了 purrr。

问题:

有人可以帮助我了解内部发生的事情吗?