Funkcja qqmath tworzy świetne wykresy losowe przy użyciu wyjścia z pakietu lmer. Oznacza to, że qqmath jest świetny w wykreślaniu przechwyceń z modelu hierarchicznego z ich błędami wokół oszacowania punktu. Przykład funkcji lmer i qqmath znajduje się poniżej przy użyciu wbudowanych danych w pakiecie lme4 o nazwie Dyestuff. Kod wygeneruje model hierarchiczny i ładną fabułę za pomocą funkcji ggmath.W R, wykreślając losowe efekty z lmer (pakiet lme4) za pomocą qqmath lub dotplot: jak sprawić, by wyglądał fantazyjnie?
library("lme4")
data(package = "lme4")
# Dyestuff
# a balanced one-way classiï¬cation of Yield
# from samples produced from six Batches
summary(Dyestuff)
# Batch is an example of a random effect
# Fit 1-way random effects linear model
fit1 <- lmer(Yield ~ 1 + (1|Batch), Dyestuff)
summary(fit1)
coef(fit1) #intercept for each level in Batch
# qqplot of the random effects with their variances
qqmath(ranef(fit1, postVar = TRUE), strip = FALSE)$Batch
Ostatnia linia kodu tworzy naprawdę ładny wykres każdego punktu przecięcia z błędem wokół każdego oszacowania. Ale formatowanie funkcji qqmath wydaje się być bardzo trudne i starałem się sformatować fabułę. Mam wymyślić kilka pytań, na które nie mogę odpowiedzieć, a myślę, że inni mogą również skorzystać z, jeśli są one za pomocą kombinacji lmer/qqmath:
- Czy istnieje sposób, aby wziąć powyżej funkcję qqmath i dodać kilka opcji, takich jak: czy niektóre punkty są puste, czy wypełnione, czy różne kolory dla różnych punktów? Na przykład, czy możesz ustawić punkty dla A, B i C zmiennej Batch, ale pozostałe punkty są puste?
- Czy można dodać etykiety osi dla każdego punktu (np. Wzdłuż górnej lub prawej osi )?
- Moje dane mają blisko 45 przechwyceń, więc istnieje możliwość dodania odstępów między etykietami, aby nie do siebie pasowały? GŁÓWNIE, jestem zainteresowany rozróżnianiem/etykietowaniem punktów na wykresie , który wydaje się być niewygodny/niemożliwy w funkcji ggmath.
Do tej pory dodanie dowolnej dodatkowej opcji w funkcji qqmath powoduje błędy, które nie będą powodowały błędów, jeśli jest to standardowy wykres, więc jestem w błędzie.
TAKŻE, jeśli uważasz, że jest lepszy pakiet/funkcja do wykreślania przechwyceń z lm wyjściowego, chciałbym to usłyszeć! (na przykład, czy możesz zrobić punkty 1-3 używając dotplot?)
Dzięki.
EDYCJA: Jestem również otwarty na alternatywny dotplot, jeśli można go w rozsądny sposób sformatować. Po prostu podoba mi się wygląd fabuły ggmath, więc zaczynam od pytania na ten temat.
Wielkie dzięki! To wygląda świetnie. Ale zanim oddam nagrodę, dostaję dwa błędy, które mówią: nie mogłem znaleźć funkcji "przewodników" i nie mogłem znaleźć funkcji "temat" z twojego kodu fabularnego. Mam biblioteki dla ggplot2 i wagi, ale nadal dostaję błędy. Jakiś pomysł, dlaczego tak się stało? Czy to inny pakiet? Nadal mogę wydrukować działkę, ale nie jest ona identyczna z powodu błędów.Czy możliwe jest odwrócenie osi tak, aby poziomy znajdowały się na osi Y (a paski błędu byłyby poziome)? –
Powinieneś zaktualizować swoją wersję ggplot (i skale). Nastąpiły poważne zmiany w najnowszych wersjach, w tym użycie 'tematu' (zamiast' opts') – mnel
hmm, zaktualizowałem wszystkie moje pakiety i nadal nie działa. Próbowałem wyłączyć R przed ponowną próbą; również wypróbował kod w R Studio, ale to nie działa:/ –