2013-11-13 4 views
0

Надеюсь, это прямолинейный вопрос. Я не уверен, где ошибка: похоже, что R здесь не работает. Я перезапустил R и воспроизвел ошибку, поэтому я не уверен, что происходит.ошибка построения графика - полунормальный график [

Проблема: У меня есть некоторые данные, и я пытаюсь создать полунормальный сюжет для эффектов. Ho-гул, все идет хорошо ... кроме самого значительного эффекта не появляется в моей половине нормального участка:

# load data 
dat2 <- read.table("http://www.stat.ucla.edu/~hqxu/stat201A/data/solder2.dat") 
# required library 
library(faraway) 
# rename vars 
names(dat2) <- tolower(names(dat2)) 
# create full model 
a1.1 <- aov(defects ~ a + b + c + d + e + f + g + h + a:b + a:e + a:f + a:g + a:h + 
       b:f + b:g + b:h + c:f + c:g + c:h + d:f + d:g + d:h + e:f + e:g + e:h,data=dat2) 
# plot effects 
halfnorm(a1.1$coef[-1], nlab= length(a1.1$coef[-1])/3-1, labs= names(a1.1$coef[-1]), 
     ylab= "abs|Factor Effects|", 
     main= "Half Normal Plot") + qqline(abs(a1.1$coef[-1])) 

enter image description here

Как вы можете видеть, мой участок отсутствует эффект C. Самый большой. Пожалуйста, дайте мне знать, если вы не можете воспроизвести эту ошибку. Мне кажется очень странным.

# effects from the model, descending 
a1.1$coef[-1][order(abs(a1.1$coef[-1]), decreasing=T)][1:10] 
     c  a  e  a:h  b:f  c:f  a:f  c:g  c:h  a:g 
56.875 -27.500 22.750 13.125 -13.000 -12.750 12.500 12.375 7.375 7.000 

EDIT Как и следовало ожидать, и отмечено ниже, это было просто. Вот правильный код:

halfnorm(a1.1$coef[-1], nlab= round(length(a1.1$coef[-1])/3,0), labs= names(a1.1$coef[-1]), 
     ylab= "abs|Factor Effects|", 
     main= "Half Normal Plot") + qqline(abs(a1.1$coef[-1])) 

ответ

1

Ваше значение nlab не является целым числом. Если посмотреть на код, это вызовет проблему, и в некоторых случаях последний эффект не получит ярлык. Если вы округлите значение или просто установите его прямо на целое число, ваша проблема исчезнет.

+0

Спасибо. Для полноты я добавил код к моему вопросу. –

Смежные вопросы