geom_smooth () які доступні методи?


93

Я використовую geom_smooth()від ggplot2.

У книзі Хедлі Вікхема ("ggplot2 - Елегантна графіка для аналізу даних") є приклад (сторінка 51), де method="lm"використовується. В онлайн-посібнику не йдеться про methodаргумент. Я бачу інші результати Google (і запитання тут), якими користуються люди method='loess'.

Чи є десь вичерпний перелік, який пояснює варіанти?

З того, що я бачу, 'lm'малює пряму лінію і 'loess'малює дуже плавну криву. Я припускаю, що є інші, які проводять більше нерівну лінію між опорними точками?

seАргумент з прикладу також не в допомоги або інтерактивної документації.

FWIW ось мій код.

p <- ggplot(output8, aes(age, myoutcome, group=id, colour=year_diag_cat2)) +
  geom_line() + scale_y_continuous(limits = c(lwr,upr))
p + geom_smooth(aes(group=year_diag_cat2), method="loess", size=2, se=F)


2
Запитання та відповіді застарілі. Поточна документація перелічує аргументи: ggplot2.tidyverse.org/reference/geom_smooth.html
jan-glx

Посилання @ StéphaneLaurent переїхало (враховуючи, що йому зараз більше 5 років): stats.idre.ucla.edu/r/faq/…
MokeEire

Відповіді:


38

Іноді це питання, через яке відповідь вискакує. Методи та додаткові аргументи перелічені на сторінці ggplot2 wiki stat_smooth .

На що посилається на geom_smooth()сторінці:

"Див. Stat_smooth для прикладів використання вбудованого підгонки моделі, якщо вам потрібна більш гнучка, цей приклад показує вам, як скласти підходи до будь-якої обраної вами моделі".

Я не вперше бачу аргументи в прикладах для графіків ggplot, які спеціально не містяться у функції. Це ускладнює розробку обсягу кожної функції, або, можливо, я ще не наткнувся на магічний явний список, який говорить, що буде, а що не буде працювати в кожній функції.


4
так, документація трохи безладна. Мені не подобається, як Спрінгер бере понад 40 баксів за книгу Хедлі, яка містить інформацію, якої бракує на веб-сайті.
wespiserA

@wespiserA в якому сенсі інформація відсутня на веб-сайті (або довідці про пакет)? nzcoops шукав не в тому місці. Це не означає, що допомога для geom_smooth()не може бути покращена, скажімо, чітко згадавши methodі побачити stat_smooth()- на даний момент це трапляється лише в коментарі в прикладах - і ввічливий електронний лист до Хадлі, я впевнений, спрацює чудеса. Писати документацію важко, особливо коли ви так близько до коду; як розробник, ви більше не користувач, і вам буде важко писати документацію для користувачів.
Гевін Сімпсон,

1
@nzcoops, чому вона не задокументована як аргумент, geom_smooth()полягає в тому, що ця функція не має або не приймає цей аргумент. Геокод призначений для створення об'єктів, які під час друку виконують креслення. Домовленість у ggplot полягає у тому, щоб мати stat_foo()функції, навіть у тій мірі, stat_identity()коли ви не хочете нічого обчислювати. Тим не менш, Хедлі вітає коментарі / критику свого коду / пакетів, тож напишіть йому та надішліть електронною поштою та запропонуйте більш профільні посилання між geom_документацією та пов'язаними з нимиstat_
Гавін Сімпсон,

2
@Gavin, так, я кілька разів писав по електронній пошті Хедлі, думав, що питання все ще є цінним, оскільки я не сумніваюся, що в якийсь момент інші погуглять його. Ваш коментар щодо "не має або не приймає цей аргумент" є неправильним. Це робить. Він цілком може передати його на stat_smooth (), але він все одно приймає, як показують приклади. Я також не хотів заважати Хедлі за те, що я знав, що хтось може швидко відповісти, хоча і сам: /
nzcoops

23

Аргумент методу визначає параметр плавної статистики. Ви можете переглянути stat_smoothсписок усіх можливих аргументів аргументу методу.


Нахабна зміна відповіді @wespiser: P Я її
пропущу

так, ти вперше вловив мій блеф. Після цього я вирішив трохи дослідити і з'ясував, що відбувається!
wespiserA

1

Аргумент se з прикладу також відсутній у довідці або в онлайн-документації.

Коли 'se' у geom_smooth встановлено 'FALSE', область затінення помилок не видно

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.