问题标签 [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.
r - 您可以使用 dplyr cross() 来遍历成对的列吗?
我有 18 对变量,我想对它们进行成对数学计算以计算 18 个新变量。将公式应用于一列时,dplyr 中的 cross() 函数非常方便。有没有办法将 cross() 应用于成对的列?
简单除法 2 个变量的小例子(我的实际代码会更复杂,一些 ifelse,...):
r - 结合 mutate(across) 和 case_when 根据条件用 0 填充多列
在 dplyr 工作流程中,当 newvar == 0 时,我尝试在数据框的每一列中粘贴 0 在 newvar 列之后,否则什么也不做。我修改了虹膜数据集:
我尝试了像这里这样的解决方案如何将cross()函数与mutate()和case_when()结合起来,根据条件改变多列中的值?. 我的理解:
- 我浏览了
.[,3:ncol(.)]
newvar 列之后的列。 - 我尝试
case_when(newvar==0
设置条件。 - 如果条件满足,我尝试说粘贴 0
~ 0
之后。newvar==0
我知道我做错了什么,但我不知道是什么!谢谢您的帮助。
r - 一起使用 summarise、cross 和 quantile 函数
我正在尝试使用mtcars
数据集来计算汇总统计数据。这是我的代码 -
但我收到以下错误 -
错误:
summarise()
输入有问题..1
。x 不能对不存在的列进行子集化。x 位置 65、66、69、71、76 等不存在。i 只有 6 列。i 输入..1
是across(...)
。
如果我从上面的代码中取出Q25 = quantile (.,0.25)
and ,它工作正常。Q75 = quantile (.,0.75)
实际上,我可以使用以下代码获得预期的结果 -
但我想用across
函数来使用summarise
函数。我不想使用该summarise_each
功能。
r - R - 如何将参数传递给“跨越”函数?
我有一个数据框,其中包含多个日期值作为字符串的列(格式:YYYYMMDD)。
现在我想将字符串转换为日期格式并尝试了以下代码,它工作正常:
但是这段代码很烦人,我想使用“mutate across”而不是多重 as.Date-conversions。
我尝试了几种替代方法,但没有任何效果。
结果:字符串不是标准的明确格式
结果:缺少参数“x”
结果:不知道如何转换'.' 到“日期”类</p>
我没有得到它,不知道该怎么办。
如何将参数传递给跨命令中使用的函数?
问候本尼
r - 使用 ifelse 和 is.na 进行变异
我有下面概述的格式的数据,其中我需要使用的所有变量要么NA
是变量的名称,要么是变量的名称,我需要将 NA 更改为 0,将字符串更改为 1。我正在尝试使用dplyr::across()
和ifelse()
,但返回的都是 1。我现在唯一可行的解决方案是单独改变每个变量。
如何NA
一次将多个变量的所有 s 更改为 0 并将所有字符串更改为 1?
由reprex 包(v0.3.0)于 2021-01-13 创建
r - 变异、跨越和 case_when
我在 mutate、cross 和 case_when 正常运行时遇到了一些麻烦,我在这里重新创建了我的问题的简单版本:
我的目标是用 4 替换所有 3,并保持其他一切不变。我有以下代码:
它很接近,但我得到了 NA 值,我想在原始 tibble 中保持值。如何使用跨结构变异来维护原始值?
先感谢您!
r - 由于特定的正则表达式,如何使用 mutate(across()) 更改列?
我对 mutate(across()) 函数有疑问。在下面的小标题中,我想删除列中的“字母+下划线”(例如“p__”、“c__”等)。
一年前我使用了命令
现在,它提示我不再支持 funs 功能并且它不再工作了。你对我有什么建议吗?我想过:
但在这里我得到了错误:
非常感谢 :) 凯瑟琳
r - 通过 dplyr::filter() + dplyr::across() 组合使用 any()、all() 等的正确方法是什么?
说我有以下内容data.frame
df
:
我想处理以仅保留那些在、或中至少data.frame
包含前缀的行。WHAT_
col1
col2
col3
现在我知道我可以使用 轻松做到这一点|
,但我试图通过使用dplyr::across
andtidyselect::matches
以及指向正确base::any
的列来实现这一点。但这似乎不起作用,即使与.stringr::str_detect
dplyr::filter
dplyr::rowwise
那么在这里解决这个问题的正确方法是什么?我究竟做错了什么?
我想使用across
+any
主要是因为我可能不一定事先知道我在实际数据集中有多少这些列。
下面是我的示例(数据+代码):
pandas - pandas:计算所有类别的平均相似度
我有一个类似以下但更大的数据框:
我已经计算了基于第一列的每个可能对之间的平均相似度,如下所示(从stackoverflow中的其他答案中获得了这部分的帮助):
我想要作为输出的是所有对的平均值,例如,如果上面的代码具有以下输出:
我想有任何组合的第一个值的平均分数,任何组合的第二个值,以及任何组合的第三个值,如下所示:
r - 利用 dplyr 中的 cross() 中的函数来处理配对列
假设我有看起来像这样的数据。我希望为每个 AD 运行一个函数,并与下划线数字配对,即 AD1fun、AD2fun、AD3fun。
而不是写作,
可用于生产
但是,如果我们要使非操作功能,
它将产生一个错误,因为引用,
此过程实质上意味着您比较两个数据集:一个带有以 _1 结尾的变量,另一个带有 _2。因此,它与 dat %>% select(ends_with("_1")) - dat %>% select(ends_with("_2")) 相同。由于这些是列表,因此您无法以这种方式比较它们
如果是这样,可以做些什么来包含使用cross() 的函数?