为什么我得到估计标准。当我使用的数据永远不会为负数时为负数?
Why I get Estimate Std. in negative when the data I am using never can be negative?
我是运行一个脚本,用于找出鸟类歌曲之间的差异(比较不同的长度、频率和其他)。我在 lme4 包中使用线性混合效果。我得到负估计标准的结果。并且由于(例如)歌曲的长度不能为负,我想知道是否有人可以告诉我我做错了什么。在下面找到详细信息。
我一直在寻找我的数据中的错误以及处理数据的不同方法,得到了相同的结果。
我是这样组织数据的:
Bird site length freq
1 FH 2.69 4354 -58.9
1 FH 2.546 4298 -57.3
1 FH 2.043 5303 -53.7
2 FH 4.437 6084 -63.1
11 ML 3.371 4689 -37.1
12 ML 3.706 5470 -39.7
13 ML 4.331 5358 -48.7
13 ML 4.124 4744 -39.8
14 ML 3.802 5805 -42.5
这是完整代码
#1 song lenght####
library("lmerTest")
model1<-lmer(length~site
+(1|Bird),
data=dframe1)
summary(model1)
anova(model1, test="F")
pdat <- expand.grid (site=c("ML", "SI","FH", "SH"))
detach(package:lmerTest) #
model1<-lmer(length~site
+(1|Bird),
data=dframe1)
pred <- predictSE(model1, newdata = pdat, re.form = NA,
se.fit = T, na.action = na.exclude,
type= "response")
pred
predframe <- data.frame (pdat, pred) ; predframe
predframe
plot(
NULL
, xlim = c(0.75,4.25) #
, ylim = c(3,6)
, axes = F #
, ylab = ""
, xlab = ""
)
at.x <- c(1,2,3,4)
at.lab <- c(1,2,3,4)
for (i in 1:nrow(predframe))
{arrows(
x0 = at.x[i]
, y0 = (predframe$fit[i] + predframe$se.fit[i])
, x1 = at.x[i]
, y1 = (predframe$fit[i] - predframe$se.fit[i])
, code = 3
, angle = 90
, length = 0.12
, col = "gray25")
points(
x = at.x[i]
, y = predframe$fit[i]
, pch = 21
,bg="black"
, col = "black"
, cex = 1.25) # point size
}
axis(1, labels = c("Mainland","Sully", "Flat Holm","Skokholm"), at = at.lab)
axis(2, at = c(3,4,5,6), labels = c(3,4,5,6), las = 1, cex.axis = 1)
box()
title(xlab = "Location", line = 2.5, cex = 0.8)
title(ylab = expression(paste("song length (secs)")), line = 2.75)
Ahead 是结果的第一部分,不知道为什么站点 FH (siteFH -0.9480) 会出现负数。其他变量也会发生这种情况,所以我想模型一定有问题。我是初学者,请和我一起考虑,我已经看过了,我没有找到类似的问题。
提前致谢。
Results
`Scaled residuals:
Min 1Q Median 3Q Max
-3.1852 -0.4119 -0.0071 0.5304 2.2659
Random effects:
Groups Name Variance Std.Dev.
Bird (Intercept) 0.51798 0.7197
Residual 0.07313 0.2704
Number of obs: 112, groups: Bird, 42
Fixed effects:
Estimate Std. Error df t value Pr(>|t|)
(Intercept) 4.2429 0.1787 37.6710 23.745 < 2e-16 ***
siteFH -0.9480 0.2965 36.3879 -3.197 0.002871 **
siteSH 1.2641 0.3173 35.4150 3.983 0.000323 ***
siteSI -0.4258 0.3515 35.2203 -1.212 0.233769
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Correlation of Fixed Effects:
(Intr) siteFH siteSH
siteFH -0.603
siteSH -0.563 0.339
siteSI -0.508 0.306 0.286
> anova(model1, test="F")
Type III Analysis of Variance Table with Satterthwaite's method
Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
site 3.0075 1.0025 3 35.336 13.709 4.337e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1`
输出中的列右对齐,因此列名为 Estimate,下一列名为 Std。错误.
估计值描述了因变量和自变量之间的关联。它没有描述数据集中的任何值。
负面估计就意味着 "the larger your dependent variable (length
), the lower your independent variable (site
)"(反之亦然)。但是在这个关系中,两个变量仍然可以是正的。
具体来说,在您的案例中,估计值 -0.948 意味着 siteFH
的 length
比 [=] 的长度大约 低 0.948 14=](参考类别,未显示在输出中)。但是,并不表示siteFH
是负数。
我是运行一个脚本,用于找出鸟类歌曲之间的差异(比较不同的长度、频率和其他)。我在 lme4 包中使用线性混合效果。我得到负估计标准的结果。并且由于(例如)歌曲的长度不能为负,我想知道是否有人可以告诉我我做错了什么。在下面找到详细信息。
我一直在寻找我的数据中的错误以及处理数据的不同方法,得到了相同的结果。
我是这样组织数据的:
Bird site length freq
1 FH 2.69 4354 -58.9
1 FH 2.546 4298 -57.3
1 FH 2.043 5303 -53.7
2 FH 4.437 6084 -63.1
11 ML 3.371 4689 -37.1
12 ML 3.706 5470 -39.7
13 ML 4.331 5358 -48.7
13 ML 4.124 4744 -39.8
14 ML 3.802 5805 -42.5
这是完整代码
#1 song lenght####
library("lmerTest")
model1<-lmer(length~site
+(1|Bird),
data=dframe1)
summary(model1)
anova(model1, test="F")
pdat <- expand.grid (site=c("ML", "SI","FH", "SH"))
detach(package:lmerTest) #
model1<-lmer(length~site
+(1|Bird),
data=dframe1)
pred <- predictSE(model1, newdata = pdat, re.form = NA,
se.fit = T, na.action = na.exclude,
type= "response")
pred
predframe <- data.frame (pdat, pred) ; predframe
predframe
plot(
NULL
, xlim = c(0.75,4.25) #
, ylim = c(3,6)
, axes = F #
, ylab = ""
, xlab = ""
)
at.x <- c(1,2,3,4)
at.lab <- c(1,2,3,4)
for (i in 1:nrow(predframe))
{arrows(
x0 = at.x[i]
, y0 = (predframe$fit[i] + predframe$se.fit[i])
, x1 = at.x[i]
, y1 = (predframe$fit[i] - predframe$se.fit[i])
, code = 3
, angle = 90
, length = 0.12
, col = "gray25")
points(
x = at.x[i]
, y = predframe$fit[i]
, pch = 21
,bg="black"
, col = "black"
, cex = 1.25) # point size
}
axis(1, labels = c("Mainland","Sully", "Flat Holm","Skokholm"), at = at.lab)
axis(2, at = c(3,4,5,6), labels = c(3,4,5,6), las = 1, cex.axis = 1)
box()
title(xlab = "Location", line = 2.5, cex = 0.8)
title(ylab = expression(paste("song length (secs)")), line = 2.75)
Ahead 是结果的第一部分,不知道为什么站点 FH (siteFH -0.9480) 会出现负数。其他变量也会发生这种情况,所以我想模型一定有问题。我是初学者,请和我一起考虑,我已经看过了,我没有找到类似的问题。
提前致谢。
Results
`Scaled residuals:
Min 1Q Median 3Q Max
-3.1852 -0.4119 -0.0071 0.5304 2.2659
Random effects:
Groups Name Variance Std.Dev.
Bird (Intercept) 0.51798 0.7197
Residual 0.07313 0.2704
Number of obs: 112, groups: Bird, 42
Fixed effects:
Estimate Std. Error df t value Pr(>|t|)
(Intercept) 4.2429 0.1787 37.6710 23.745 < 2e-16 ***
siteFH -0.9480 0.2965 36.3879 -3.197 0.002871 **
siteSH 1.2641 0.3173 35.4150 3.983 0.000323 ***
siteSI -0.4258 0.3515 35.2203 -1.212 0.233769
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Correlation of Fixed Effects:
(Intr) siteFH siteSH
siteFH -0.603
siteSH -0.563 0.339
siteSI -0.508 0.306 0.286
> anova(model1, test="F")
Type III Analysis of Variance Table with Satterthwaite's method
Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
site 3.0075 1.0025 3 35.336 13.709 4.337e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1`
输出中的列右对齐,因此列名为 Estimate,下一列名为 Std。错误.
估计值描述了因变量和自变量之间的关联。它没有描述数据集中的任何值。
负面估计就意味着 "the larger your dependent variable (length
), the lower your independent variable (site
)"(反之亦然)。但是在这个关系中,两个变量仍然可以是正的。
具体来说,在您的案例中,估计值 -0.948 意味着 siteFH
的 length
比 [=] 的长度大约 低 0.948 14=](参考类别,未显示在输出中)。但是,并不表示siteFH
是负数。