首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在R中` `dplyr::across`的右侧应用两个或更多函数来查找weighted.means和variances?

在R中,可以使用dplyr::across函数在数据框的多个列上应用两个或更多函数来查找加权平均值和方差。

dplyr::across函数允许我们在一次操作中对多个列进行相同的转换。为了在across的右侧应用两个或更多函数,我们可以使用list函数将这些函数组合在一起。

下面是一个示例代码,演示如何使用across函数在数据框的多个列上应用加权平均值和方差函数:

代码语言:txt
复制
library(dplyr)

# 创建一个示例数据框
df <- data.frame(
  x = c(1, 2, 3),
  y = c(4, 5, 6),
  weight = c(0.1, 0.2, 0.3)
)

# 使用across函数应用加权平均值和方差函数
result <- df %>%
  mutate(
    across(
      c(x, y),
      list(
        weighted.mean = ~weighted.mean(., w = weight),
        variance = ~var(., w = weight)
      )
    )
  )

# 打印结果
print(result)

在上面的示例中,我们首先加载了dplyr包,并创建了一个示例数据框df,其中包含了两列xy,以及一个权重列weight

然后,我们使用mutate函数和across函数来对xy列应用加权平均值和方差函数。在across函数中,我们指定了要应用函数的列(c(x, y)),并使用list函数将两个函数(weighted.meanvariance)组合在一起。

最后,我们将结果保存在result变量中,并打印出来。

这样,我们就可以在R中使用dplyr::across函数的右侧应用两个或更多函数来查找加权平均值和方差。对于加权平均值,我们可以使用weighted.mean函数,并指定权重列;对于方差,我们可以使用var函数,并指定权重列。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的视频

领券