r - 如何为异方差数据设置 r 中的加权最小二乘法?

标签 r regression least-squares

我正在对人口普查数据进行回归,其中我的因变量是预期生命周期,我有八个自变量。数据汇总为城市,因此我有数千个观察结果。

不过,我的模型有点异方差。我想运行一个加权最小二乘法,其中每个观察值都由城市人口加权。在这种情况下,这意味着我想通过总体平方根的倒数对观察进行加权。然而,我不清楚最好的语法是什么。目前,我有:

Model=lm(…,weights=(1/population))

那是对的吗?或者应该是:
Model=lm(…,weights=(1/sqrt(population)))

(我在这里发现了这个问题:Weighted Least Squares - R 但它没有说明 R 如何解释权重参数。)

最佳答案

来自 ?lm :“权重:在拟合过程中使用的可选权重向量。应该是 NULL 或数字向量。如果非 NULL,加权最小二乘法与权重一起使用 weights(即最小化 sum(w*e ^2));否则使用普通最小二乘法。” R 不对权重参数做任何进一步的解释。

所以,如果你想最小化的是(从每个点到拟合线的平方距离 * 1/sqrt(population) 那么你想要 ...weights=(1/sqrt(population)) 的总和。如果你想最小化(从的平方距离)每个指向拟合线 * 1/population) 然后你想要 ...weights=1/population

至于哪个最合适……这是CrossValidated的问题。 !

关于r - 如何为异方差数据设置 r 中的加权最小二乘法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18260017/

相关文章:

r - 1 个字母氨基酸变体到 3 个字母

python - PolynomialFeatures 和 LinearRegression 返回不需要的系数

r - R 中具有协变量的循环线性回归

r - R 中的树 : regression vs classification

python - python中的最小二乘法

c++ - 使用 Eigen 求解密集、约束最小二乘拟合

r - 带有 $\lambda = 0$ 的 LASSO 和 OLS 在 R glmnet 中产生不同的结果

r - 徒手画ggplot。如何改进和/或格式化 plotly?

r - 如何让 R 脚本在必须读取一行时停止?

r - 如何使用autoconf重新生成配置文件?