我想比较在三个地点收集的回归模型,看看地点是否有所作为。
考虑一些玩具数据:
mydata <- read.table(header=TRUE, text="
location height weight
spain 178 90
spain 187 80
spain 155 70
spain 187 85
spain 150 60
spain 155 73
spain 168 80
spain 160 75
spain 177 77
spain 178 83
russia 165 60
russia 161 55
russia 187 94
russia 175 77
russia 170 70
russia 181 90
russia 173 72
russia 163 58
russia 177 80
russia 167 67
peru 177 75
peru 182 65
peru 145 55
peru 176 70
peru 150 45
peru 155 58
peru 168 65
peru 160 60
peru 177 62
peru 178 68
")
我知道我可以使用ANOVA等来查看身高或体重是否存在治疗(即国家)差异但是我不确定我是否可以明确地为REGRESSIONS做这个(即两者之间的关系是否存在差异)不同国家的身高和体重)。对于这个例子,我想假设体重是身高的函数。
如果你为每个国家产生一个回归,你会发现西班牙和秘鲁有一个相似的斜率但截距不同,而俄罗斯有更陡峭的斜率和截距。我怎样才能正式测试这个(理想情况下有显着性值等)?
提前感谢 - 并为我明显不充分的统计背景道歉。
答案 0 :(得分:3)
通常我会在模型中包含一个交互项:
lm(weight~height*location, mydata)
如果相互作用系数很大,则有证据表明不同位置的斜率可能不同。您仍然可以使用ANOVA进行整体测试。
答案 1 :(得分:2)
我认为Chow Test可能合适吗?
它看起来像是在gap包中实现的。
library('gap')
mydata <- read.table(header=TRUE, text="
location height weight
spain 178 90
spain 187 80
spain 155 70
spain 187 85
spain 150 60
spain 155 73
spain 168 80
spain 160 75
spain 177 77
spain 178 83
russia 165 60
russia 161 55
russia 187 94
russia 175 77
russia 170 70
russia 181 90
russia 173 72
russia 163 58
russia 177 80
russia 167 67
peru 177 75
peru 182 65
peru 145 55
peru 176 70
peru 150 45
peru 155 58
peru 168 65
peru 160 60
peru 177 62
peru 178 68
")
y1 <- subset(mydata, location=='spain')$weight
y2 <- subset(mydata, location=='peru')$weight
x1 <- subset(mydata, location=='spain')$height
x2 <- subset(mydata, location=='peru')$height
chow.test(y1, x1, y2, x2)
F value d.f.1 d.f.2 P value
1.701350e+01 2.000000e+00 1.600000e+01 1.094774e-04
小P值似乎表明西班牙和秘鲁实际上最好由不同的模型提供服务......
答案 2 :(得分:2)
我只想在前一个答案中添加一点&#34; lm(weight~height * location,mydata)&#34;。谈到回归,我想到了ANOVA。因此,如果您在上一个答案中添加ANOVA,那么:
anova(lm(weight~height*location, mydata))
Analysis of Variance Table
Response: weight
Df Sum Sq Mean Sq F value Pr(>F)
height 1 2103.80 2103.80 109.738 1.969e-10 ***
location 2 859.82 429.91 22.425 3.219e-06 ***
height:location 2 585.24 292.62 15.264 5.286e-05 ***
Residuals 24 460.11 19.17
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
所以Pr(> F)会告诉你差异何时显着,我们全面了解。
在运行ANOVA之前,您必须检查方差和正态性的假设