gpt4 book ai didi

r - 预测函数中类型 ="response"、 "terms"和 "link"之间有什么区别?

转载 作者:行者123 更新时间:2023-12-02 11:33:50 24 4
gpt4 key购买 nike

假设我想预测对解释变量的特定值的响应。但我不明白为什么我使用 type="response"或 "terms"或 "link"。

最佳答案

假设您正在谈论 GLM,您应该首先了解模型是如何构建的以及它与因变量的关系。这是一个广泛的话题,值得在大学里进行完整的讲座。我的建议是拿起一本书并从那里开始。

简而言之,为了计算出数学结果,您需要将 y 包装到某个函数中,以便在等式右侧得到一个“nice”,例如f(y) = beta_0 + beta_1 * X1 + beta_2 * X2 + e 类型公式。

ldose <- rep(0:5, 2)
numdead <- c(1, 4, 9, 13, 18, 20, 0, 2, 6, 10, 12, 16)
sex <- factor(rep(c("M", "F"), c(6, 6)))
SF <- cbind(numdead, numalive = 20-numdead)

budworm.lg <- glm(SF ~ sex*ldose, family = binomial)

现在,当您要求 predict 返回 type = link 时,您将获得 f(y) 值。

predict(budworm.lg, type = "link")
1 2 3 4 5 6
-2.8185550 -1.5596055 -0.3006561 0.9582933 2.2172427 3.4761922
7 8 9 10 11 12
-2.9935418 -2.0875053 -1.1814689 -0.2754324 0.6306040 1.5366404

type = response 将解析该术语,使其处于“自然”范围内。

predict(budworm.lg, type = "response")
1 2 3 4 5 6
0.05632970 0.17370326 0.42539710 0.72277997 0.90178726 0.97000272
7 8 9 10 11 12
0.04771849 0.11031718 0.23478819 0.43157393 0.65262640 0.82297581

type = terms 将返回一个给定线性尺度上每个观测值拟合的矩阵。

predict(budworm.lg, type = "terms")

sex ldose sex:ldose
1 0.08749339 -2.2650911 -0.44114124
2 0.08749339 -1.3590547 -0.08822825
3 0.08749339 -0.4530182 0.26468474
4 0.08749339 0.4530182 0.61759773
5 0.08749339 1.3590547 0.97051072
6 0.08749339 2.2650911 1.32342371
7 -0.08749339 -2.2650911 -0.44114124
8 -0.08749339 -1.3590547 -0.44114124
9 -0.08749339 -0.4530182 -0.44114124
10 -0.08749339 0.4530182 -0.44114124
11 -0.08749339 1.3590547 -0.44114124
12 -0.08749339 2.2650911 -0.44114124
attr(,"constant")
[1] -0.199816

关于r - 预测函数中类型 ="response"、 "terms"和 "link"之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47486589/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com