Интерпретация диаграммы разброса (R) и вычисление дисперсии среднего - PullRequest
0 голосов
/ 12 июля 2020

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

Я использовал код для этого графика отсюда: создание диаграмм разброса для двух переменных в ggplot2 в R

Однако я не вполне умею трактовать сюжет. Я понимаю, что цветные точки являются средними значениями ячеек, но что они на самом деле говорят нам о данных и как мне в дальнейшем рассчитать дисперсию этих желтых точек?

* 1008 показать (слабую) линейную взаимосвязь, хотя некоторые из желтых точек на самом деле не соответствуют тенденции?

Заранее спасибо!

Бинированная диаграмма рассеяния

1 Ответ

1 голос
/ 12 июля 2020

Мы можем объединить данные с помощью функции cut() следующим образом:

mybin <- cut(df$x,20,include.lowest=TRUE,right = FALSE)
df$Bins <- mybin

Затем, чтобы вычислить среднее значение разделенных данных,

library(tidyverse)

out<- df %>% group_by(Bins) %>% summarise(x=mean(x),y=mean(y)) %>% as.data.frame()

Чтобы сравнить наши результаты с stat_summary_bin() функция ggplot2, мы можем построить их вместе,

(ggplot(df, aes(x=x,y=y)) +
  geom_point(alpha = 0.4) +
  stat_summary_bin(fun='mean', bins=20,
                   color='orange', size=2, geom='point') +
     geom_point(data = out,color="green"))

# green dots are the points we calculated. They are perfectly matching.

enter image description here

Now, to calculate the variance, we can simply follow the same process with the var() function. So,

 df %>% group_by(Bins) %>% summarise(Varx=var(x),Vary=var(y)) %>% as.data.frame()

gives the variance of the binned data. Note that, since the x axis is binned, the variance of x will be almost zero. So,the important one in here is the variance of the y axis actually.

  • The variances of the binned data gives us a mimic about the гетероскедастичность данных.

  • Путь к среднему бинну также показывает структуру данных. Так что ваши данные имеют положительную динамику. (Нет необходимости видеть идеальную плавную линию). Но он становится слабее из-за различных средств, как вы предложили.

Данные:

set.seed(42)
x <- runif(1000)
y <- x^2 + x + 4 * rnorm(1000)
df <- data.frame(x=x, y=y)

Примечание: Данные и некоторые коды ggplot2 были взяты из указанного вопроса ОП .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...