在没有funs()的summarize_at()和summarize_all()中使用其他列作为函数的参数,可以通过使用tidyverse包中的mutate()和across()函数来实现。
mutate()函数用于创建新的变量,而across()函数用于在多个列上应用相同的操作。结合这两个函数,可以在没有funs()的情况下使用其他列作为函数的参数。
下面是一个示例代码:
library(tidyverse)
# 创建一个示例数据框
df <- tibble(
x = c(1, 2, 3),
y = c(4, 5, 6),
z = c(7, 8, 9)
)
# 使用mutate()和across()在没有funs()的情况下使用其他列作为函数的参数
df <- df %>%
mutate(new_col = across(c(x, y), ~ .x + z))
# 输出结果
print(df)
在上述代码中,我们使用mutate()函数创建了一个新的列new_col
,并使用across()函数在列x
和y
上应用了一个函数~ .x + z
,其中.x
代表当前列的值,z
是另外一列的值。这样就实现了在没有funs()的情况下使用其他列作为函数的参数。
这种方法适用于各种数据处理和计算场景,例如根据其他列的值进行条件判断、计算新的指标等。
腾讯云相关产品和产品介绍链接地址:
云+社区技术沙龙[第16期]
云+社区技术沙龙[第14期]
DBTalk
云+社区技术沙龙[第22期]
T-Day
云+社区沙龙online [国产数据库]
云原生正发声
北极星训练营
DB TALK 技术分享会
领取专属 10元无门槛券
手把手带您无忧上云