2013-07-25 4 views
2

Используя основную функцию графика (plot.intervals.lmList) из модели lme (называемой meef1), я произвел массивный график ящиков. Мой вектор v2andv3commoditycombined имеет 98 уровней.Разделение lme остаточного участка на отдельные ящики

участок (meef1, v2andv3commoditycombined ~ кубовых остатков (.))

Я хотел бы отделить от группирования значений моей переменной v2andv3commoditycombined либо график их по отдельности, заказать их, или исключить некоторые из них. Я не уверен, есть ли код для этого или если мне нужно извлечь информацию из вывода lme. Если это так, я не уверен, что извлечь для создания ящиков, поскольку извлечение остатков возвращает только одно значение для каждого уровня. Если это невозможно, любые советы о том, как скрыть товарные имена, будут одинаково полезными.

спасибо.

+0

Просьба предоставить образец данных и код. http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example –

ответ

0

Для каждого уровня v2andv3commoditycombined, что именно вам нужна ваша ось Y и ваша ось X? Поскольку вы разбиваете графики на v2andv3commoditycombined, вы, очевидно, также не можете использовать это как одну из своих осей.

Давайте сделаем вид, что вы просто хотите использовать традиционные остатки по оси Y и установленные значения по оси X, в отдельном графике для каждого из 98 уровней. Вы можете изменить код, чтобы сделать сюжет независимо от того, что вы на самом деле хотите построить.

Согласно ?plot.lme, вы могли бы сделать что-то вроде этого:

plot(meef1,resid(.,type='pearson',level=1)~fitted(.,level=1)|v2andv3commoditycombined); 

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

plot(meef1,resid(.,type='pearson',level=1)~fitted(.,level=1)|v2andv3commoditycombined,pch='.',cex=1.5,abline=0); 

Поскольку не было ясно из вашего вопроса, я пошел вперед и вымышленными вы заинтересованы в невязках индивидуального уровня (т.е. сколько каждый DataPoint отличается от предсказанного значение с учетом его случайных величин), и что у вас есть один уровень гнездования в вашей случайной формуле. Если вы хотите, чтобы остатки населения (т. Е. Сколько каждый набор данных отличается от среднего прогнозируемого значения), измените оба экземпляра level, чтобы сказать level=0. Если у вас есть K уровней гнездования, измените их на level=K и удачи.

Я также предполагал, что вы хотите стандартизованные остатки (потому что вы можете использовать удобное правило, что абсолютные значения больше 3 являются возможными выбросами, независимо от того, в каком масштабе находятся исходные данные). Если нет, см. ?residuals.lme для других допустимых параметров аргумента type.


О, и имя вашего переменные говорит о том, что вы смотрите на каком-то финансовые временные ряды. Если да, посмотрите на ACF(meef1), чтобы узнать, есть ли много автокорреляции. Если это возможно, вы можете исправить это, заменив модель, где переменная ответа (Y) равна diff(...) исходной переменной. Если вы видите действительно искаженные остатки, вы можете подумать о том, как преобразовать переменную ответа в журнал, прежде чем принимать diff.

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