2016-12-13 1 views
3
## load the dataset  
library(car) 
library(texreg) 
library(effects) 
library(psych) 
Prestige$lnincome <- log(Prestige$income) 
PrestigeSubset <- Prestige[!rownames(Prestige) %in% c("MINISTERS","BABYSITTERS","NEWSBOYS"), ] 

m1 <- lm(lnincome ~ prestige + women + education + type, data = PrestigeSubset) 
m2 <- lm(lnincome ~ prestige*women + education + type, data = PrestigeSubset) 
anova(m1, m2) 


# Analysis of Variance Table 
# Model 1: lnincome ~ prestige + women + education + type 
# Model 2: lnincome ~ prestige * women + education + type 
# Res.Df RSS Df Sum of Sq  F Pr(>F) 
# 1  91 4.3773       
# 2  90 4.2661 1 0.11127 2.3473 0.129 

plot(effect("prestige:women", m2), xlevels = list(women = c(0, 25, 50, 75, 97.51)), multiline = T) 

enter image description hereКак изменить преобразование журнала при представлении эффекта модерации из моделей линейной регрессии в R?

Я сделал первый регрессионная модель m1, то другая модель регрессии с термином взаимодействия (профессии престижа и доля женщин в этой профессии). Сравните две модели, чтобы увидеть, является ли взаимодействие значительным (так же, как значение p взаимодействия в резюме (m2)). Сюжет здесь - это влияние престижа профессии на доход от профессий на разной доле женщин с использованием набора данных Prestige (для практики). Идея заключается в том, что профессии с меньшим количеством женщин будут вознаграждены меньше (для решения проблемы гендерного равенства).

Доход (ось y) здесь фактически естественный журнал преобразован. Но я хочу представить первоначальный доход. Как мне это сделать?

Кроме того, термин взаимодействия фактически не имеет значения. Но когда я использовал первоначальный доход, он был значительным. Я знаю, что существует эффект умеренности «женщин» (доля женщин) на «престиж → доход». Есть ли способ разрешить несогласованность?

+1

Пожалуйста 'dput()' ваши данные, чтобы сделать ваш пример воспроизводимая –

+0

@ Hack-R Набор данных примерный набор в упаковке автомобиля. Я обновлю код, чтобы сделать его воспроизводимым. – FinnHusky

ответ

1

Я решил первый вопрос. Добавьте некоторые параметры для выполнения функции, сделайте это.

plot(effect("prestige:women", m2, xlevels = list(women = c(0, 25, 50, 75, 97.51)), 
transformation = list(link = log, inverse = exp)), 
multiline = T, type = "response", add = T) 
+0

Спасибо, это сработало! – FinnHusky

Смежные вопросы