r - 编码加权平均值 (R)
问题描述
我的一段代码有问题。我想执行加权平均值,但如果我自己计算加权平均值,我得到的值不是我得到的值。
这是我编码加权平均值的方式:
weighted.mean(x = dataset$A[rows], weights = weights)
变量是“dataset$A”,我用于加权平均值的行列在“rows”中(有 2 行)。权重列在“权重”中。
这是我自己计算的方式:
dataset$A_MEAN[rows[1]]*weights[1] + dataset$A_MEAN[rows[2]]*weights[2]
为什么这两行代码有区别?我尝试了以下值:
dataset$A = [45792.76, 64984.67]
weights = [0.3253927, 0.6746073]
第一行代码返回:55388.71 第二行代码返回:58739.76
太感谢了!我确信这是一件小事,但它让我发疯了!
解决方案
检查您的使用weighted.mean
论据weights
应该是w
:
weighted.mean(x = dataset$A[rows], w = weights)
应该给你你想要的。
调用函数时,您可以通过阅读函数的文档来确保使用正确的变量名?weighted.mean
推荐阅读
- browser - 在不刷新页面的情况下检测元掩码安装
- javascript - 如何允许在 Firebase 中访问您的网络应用程序的照片
- flutter - 如何将多个小部件添加到小部件列表
- javascript - NodeJS中的控制台记录mongoDB连接不起作用
- r - 测试套接字是否为空(原为:从原始套接字读取数据)
- javascript - Javascript - 将知道其时区的日期时间转换为 UTC
- java - Java 对象到域类对象的转换
- python - 使用 Python 从 Arduino 读取字节
- saml - 当我们告诉客户我们的网站“支持”SAML 2.0 时,他们会期待什么?
- vb.net - JSON.NET 返回 Null 或 Nothing 值