Значения корреляции в фасетной сетке из ggplot2

При использовании facet_grid в ggplot2 я хотел бы иметь возможность иметь значение корреляции для поднабора данных для каждой ячейки сетки в верхнем правом углу конкретного графика.

например, если работает:

p <- ggplot(mtcars, aes(mpg, wt)) + geom_point()
p + facet_grid(vs ~ am, margins=TRUE)

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

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

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

Это возможно?

заранее спасибо

2 ответа

Решение

Уинстон Чанг предложил ответ на группу ggplot2... это то, что он сказал... это не плохой ответ...

Вы могли бы сделать что-то вроде этого:

p <- ggplot(mtcars, aes(mpg, wt)) + geom_point()

# Calculate correlation for each group
cors <- ddply(mtcars, c("vs", "am"), summarise, cor = round(cor(mpg, wt), 2))

p + facet_grid(vs ~ am) +
geom_text(data=cors, aes(label=paste("r=", cor, sep="")), x=30, y=4)

Я не думаю, что это можно сделать правильно с полями = ИСТИНА. Если вам нужны поля, вам может потребоваться предварительная обработка данных, чтобы добавить значение ALL для каждой переменной фасетирования.

Уинстон

Я бы предпочел добавить (линейный) сглаживатель к данным. Это дает вам гораздо больше информации, чем корреляция.

ggplot(mtcars, aes(mpg, wt)) + 
    geom_smooth(method = "loess", colour = "red", fill = "red") + 
    geom_smooth(method = "lm", colour = "blue", fill = "blue") + 
    geom_point() + facet_grid(vs ~ am, margins=TRUE)

ggplot(mtcars, aes(mpg, wt)) + geom_smooth(method = "lm") + geom_point() + 
    facet_grid(vs ~ am, margins=TRUE)

Другие вопросы по тегам