Нанесите маржинальные эффекты в исходном масштабе, используя plot_model () - PullRequest
0 голосов
/ 19 февраля 2019

Я пытаюсь нанести предельные эффекты из модели (сделанной с помощью lme4), используя plot_model()

Модели (2 версии одной модели) выглядят как

Версия 1:

m1 <- glmer(Y~Xs*Zs+(1|random.factor), family=binomial(), data=dat)

Версия 2:

m2 <- glmer(Y~scale(X)*scale(Z)+(1|random.factor), family=binomial(), data=dat)

В обеих версиях непрерывные переменные предиктора X и Z масштабируются с использованием функции scale(), но в версии 1 это делается перед созданием модели m1 и сохраняетсяв виде отдельных столбцов (Xs и Zs) в dataframe=dat, тогда как в версии 2 это указано в модели m2

Теперь у меня вопрос: если я построю график m1, то получу

График без масштабированной оси x

Я хотел бы нанести предельные эффекты для X, но вместо масштабированных значений для X на оси x я хотел бы иметь исходные, которые я пробовал

a <- plot_model(m1, type="pred", terms="Xs [myfun]")


b <- plot_model(m2, type="pred", terms="X [myfun]")

myfun была определена как обратная функция scale()

Участок a

Участок b

Итак, это дает мне два разных сюжета.Поскольку график b выглядит аналогично графику m1 без масштабированной оси x, я бы сказал, что график b является правильным.Но я не понимаю, как «[myfun]» в термине = «...» действительно работает и что он делает.Спасибо за любую помощь!

...