- 已编辑
今天想展示一个简单的两因子方差分析,就拿 ggplot2 包中的钻石数据跑了一下,代码如下:
library(ggplot2)
data(diamonds)
m = lm(price ~ cut + color, data = diamonds)
summary(m)
输出结果是酱婶儿的:
Call:
lm(formula = price ~ cut + color, data = diamonds)
Residuals:
Min 1Q Median 3Q Max
-5511 -2628 -1344 1327 16091
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4226.45 26.06 162.203 < 2e-16 ***
cut.L -293.50 67.06 -4.377 1.21e-05 ***
cut.Q -265.77 59.75 -4.448 8.70e-06 ***
cut.C -630.47 52.02 -12.119 < 2e-16 ***
cut^4 -262.85 41.92 -6.271 3.62e-10 ***
color.L 2064.35 56.76 36.370 < 2e-16 ***
color.Q 180.63 53.97 3.347 0.000818 ***
color.C -264.05 50.80 -5.198 2.02e-07 ***
color^4 37.01 46.65 0.793 0.427662
color^5 -248.25 44.11 -5.628 1.83e-08 ***
color^6 65.32 40.00 1.633 0.102486
这几个因子水平是什么鬼??如果直接查看因子水平,应该是这样的
levels(diamonds$color)
# [1] "D" "E" "F" "G" "H" "I" "J"
levels(diamonds$cut)
# [1] "Fair" "Good" "Very Good" "Premium" "Ideal"
我印象中 lm()
给水平命令是用“因子名+水平名”的办法,比如 colorD
,cutFair
这种,什么时候变成这么诡异的输出了?只有我是这样吗?