Как изменить атомные векторы для запуска ANOVA? - PullRequest
0 голосов
/ 11 мая 2019

Я хочу провести двустороннюю ANOVA, используя r. У меня есть четыре колонки: Case (1-356), ab_all (мой IV), апелляция (с 3 уровнями) и product (с 2 уровнями). К сожалению, я всегда получаю предупреждение об ошибке:

«Оператор $ недопустим для атомных векторов».

Я знаю, что мне нужно преобразовать мои данные в рекурсивный объект. Но все, что я пробовал, не удалось.
Вы знаете, как решить проблему?

я уже пробовал <- data.frame () as.data.frame (MYDATA) </p>

str(mainstudy_category)
'data.frame':   356 obs. of  4 variables:
 $ CASE   : int  1 2 3 4 5 6 7 8 9 10 ...
 $ ab_all : num  5 5 5 5 4.4 3.2 4.2 2.8 3.8 5 ...
 $ appeal : Factor w/ 3 levels "emotional negative",..: 2 2 1 2 3 3 3 3 3 1 ...
 $ product: Factor w/ 2 levels "hedonic","utilitarian": 1 1 1 2 1 1 1 1 2 2 ...
model_category<-lm(ab_all~product*appeal, data=mainstudy_category)
anova(model_category, type="III")

Ошибка: оператор $ недопустим для атомных векторов

Мои данные:

structure(list(CASE = 1:6, ab_all = c(5, 5, 5, 5, 4.4, 3.2), appeal = structure(c(2L, 2L, 1L, 2L, 3L, 3L), .Label = c("emotional negative", "emotional positive", "rational"), class = "factor"), product = structure(c(1L, 1L, 1L, 2L, 1L, 1L), .Label = c("hedonic", "utilitarian"), class = "factor")), row.names = c(NA, 6L), class = "data.frame")
...