Как использовать фреймы данных для проведения ANOVA в R - PullRequest
0 голосов
/ 18 января 2019

В настоящее время я изучаю R и играю с набором данных, который имеет четыре номинальные переменные (Hour.Of.Arrival, Mode, Unit, Weekday) и непрерывную зависимую переменную (в целом). Все это импортируется из .csv в фрейм данных с именем basic. Я пытаюсь запустить ANOVA, просто используя этот фрейм данных, без создания отдельных векторов (например, Mode <-basic $ Mode). «Fit» держит результаты ANOVA. Вот код, который я написал: </p>

Fit<-aov(basic["Overall"],basic["Unit"],data=basic)

Однако я получаю сообщение об ошибке

«Ошибка в term.default (формула« Ошибка », data = data): нет терминов компонент ни атрибут

Надеюсь, этот вопрос не слишком простой !!

Спасибо:)

1 Ответ

0 голосов
/ 18 января 2019

Я думаю, вы хотите что-то более похожее на Fit<-aov(Overall ~ Unit,data=basic). Overall ~ Unit говорит R, чтобы рассматривать Общий как результат, предсказываемый Unit; Вы уже указали, что для данных, чтобы найти эти переменные, является базовым.

Вот пример, чтобы показать вам, как это работает:

> y <- rnorm(100)
> x <- factor(rep(c('A', 'B', 'C', 'D'), each = 25))
> dat <- data.frame(x, y)
> aov(y ~ x, data = dat)
Call:
   aov(formula = y ~ x, data = dat)

Terms:
                        x Residuals
Sum of Squares    2.72218 114.54631
Deg. of Freedom         3        96

Residual standard error: 1.092333
Estimated effects may be unbalanced

Обратите внимание, вам не нужно использовать аргумент данных, вы также можете использовать aov(dat$y ~ dat$x), но первым аргументом функции должна быть формула.

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