以下是我目前的尝试:
library("tidyverse")
library("rlang")
data(mtcars)
mtcars_colnames <- quo(c("mpg", "cyl", "disp"))
num <- c(1, 2, 3)
mtcars %>% mutate(across(!!! mtcars_colnames, function(x) {x + num[col(.)]}))
我一直在思考如何动态地向列(mpg、cyl、disp)添加(1,2,3)。提前谢了。
我们可以通过只传递字符串向量而不是quo
保证和'num'的命名向量来更改输入,然后使用跨
中的cur_column
与'num'的命名向量匹配,获得相应的值并进行加法
library(dplyr)
mtcars_colnames <- c("mpg", "cyl", "disp")
num <- setNames(c(1, 2, 3), mtcars_colnames)
mtcars1 <- mtcars %>%
mutate(across(all_of(mtcars_colnames), ~ num[cur_column()] + .))
-检查输出
# // old data
mtcars %>%
select(all_of(mtcars_colnames)) %>%
slice_head(n = 5)
# mpg cyl disp
#Mazda RX4 21.0 6 160
#Mazda RX4 Wag 21.0 6 160
#Datsun 710 22.8 4 108
#Hornet 4 Drive 21.4 6 258
#Hornet Sportabout 18.7 8 360
# // new data
mtcars1 %>%
select(all_of(mtcars_colnames)) %>%
slice_head(n = 5)
# mpg cyl disp
#Mazda RX4 22.0 8 163
#Mazda RX4 Wag 22.0 8 163
#Datsun 710 23.8 6 111
#Hornet 4 Drive 22.4 8 261
#Hornet Sportabout 19.7 10 363
或者,如果我们希望传递一个未命名的'num'向量,那么cur_column将
curl_column
与across`中的'mtcars_colnames匹配以返回索引,然后使用该索引来子集'num'
mtcars1 <- mtcars %>%
mutate(across(all_of(mtcars_colnames),
~ num[match(cur_column(), mtcars_colnames)] + .))
问题内容: 我设置了logstash以使用嵌入式elastisearch。 我可以记录事件。 我的logstashconf看起来是这样的:https://gist.github.com/khebbie/42d72d212cf3727a03a0 现在,我想添加另一个udp输入,并在另一个索引中对该输入进行索引。 有可能吗?我这样做是为了使报告更加容易,因此我可以在一个索引中包含系统日志事件,而在另一
如何将一个流中的对象同时添加到两个不同的列表中 目前我正在做 要将流中的对象添加到linkedlist“resourceMemory”中,我还想同时将相同的对象添加到另一个列表中,但我找不到它的语法。是否可能,或者每个列表需要两份代码副本?
只是所有的估计日期都不一样… 我的问题是,我似乎无法针对特定的实例。我只能选择整个方法(固定费率),我检查了我的方法实例ID,因为它们是唯一的: 但只有当我把作为php开关方法的一个例子时,它才起作用。2,3,4,5,7不工作。 这是我的代码: 代码显然会对我所有的运输方法产生所有相同的估计。 谢谢! 我在用这个: 大小写'flat_rate':$标签。='Lieferzeit: 2-3标签平';
我希望文件记录器以这样的方式配置日志类别'X' 记录器one在信息级别上记录“X”,在调试级别上记录其他东西 记录器在调试级别上有两个日志“x”
为什么在添加相同的数字时输出不同? 输出为: 如果我交换值 我得到的输出为:<代码>15.7000000000001 如何获得相同的输出?
当用户单击时,我想将不同的添加到我的。 面板必须根据用户单击的按钮进行更改。这是我的代码的一部分: 我该怎么解决这个问题?