从sjPlot包中更改plot_model中的主持人的值

时间:2018-11-17 12:20:16

标签: r sjplot

我正在尝试使用plot_model在线性回归模型中创建两个变量对结果变量的交互作用的图。我的模型(BLK70 * FP59)中有一个交互项,但是当我使用type = "int"时,出现“错误:模型中没有交互项。”

我可以使用type = "pred"得到我想要的图,但是我想在交互中更改主持人术语(下面的FP59)的值。我怎样才能做到这一点?参见以下示例:

library(sjPlot)
model1 <- lm(HR70 ~ . - NAME - STATE_NAME,
       data = crimeExFilt)
model2 <- update(model1, ~ . - PO60 - PO70 -
              HC60 - HC70 - POL60 - POL70 -
              RD60 - RD70 - PS60 - PS70)
model3 <- update(model2, ~ . - GI69)
model4 <- update(model3, ~ . - GI59)
model5 <- update(model4, ~ . - MFIL59)
model6 <- update(model5, ~ . - FP69)
model7 <- update(model6, ~ . - FH60)
model8 <- update(model7, ~ . - DV60)
model9 <- update(model8, ~ . - UE60)
model10 <- update(model9, ~ . - DNL70)
model11 <- update(model10, ~ . - DNL60)
model12 <- update(model11, ~ . - BLK60)
model13 <- update(model12, ~ . - UE70)
model14 <- update(model13, ~ . + BLK70*FP59)
plot_model(model14, type = "pred", terms = c("BLK70", "FP59"))

plot_model文档中,我可以看到mdrt.values函数,但是不适用于type = "pred"

此外,如何为FP59的不同值添加更多行?

编辑:摘要数据来自dput(head(crimeExFilt, 20))。我删除了一个变量(NAME),因为它与模型无关,而且我已经超过了字符数。

structure(list(STATE_NAME = structure(c(22L, 
46L, 46L, 46L, 46L, 11L, 25L, 25L, 25L, 25L, 25L, 25L, 25L, 33L, 
33L, 33L, 33L, 33L, 33L, 33L), .Label = c("Alabama", "Arizona", 
"Arkansas", "California", "Colorado", "Connecticut", "Delaware", 
"District of Columbia", "Florida", "Georgia", "Idaho", "Illinois", 
"Indiana", "Iowa", "Kansas", "Kentucky", "Louisiana", "Maine", 
"Maryland", "Massachusetts", "Michigan", "Minnesota", "Mississippi", 
"Missouri", "Montana", "Nebraska", "Nevada", "New Hampshire", 
"New Jersey", "New Mexico", "New York", "North Carolina", "North Dakota", 
"Ohio", "Oklahoma", "Oregon", "Pennsylvania", "Rhode Island", 
"South Carolina", "South Dakota", "Tennessee", "Texas", "Utah", 
"Vermont", "Virginia", "Washington", "West Virginia", "Wisconsin", 
"Wyoming"), class = "factor"), SOUTH = c(0L, 0L, 0L, 0L, 0L, 
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), 
HR60 = c(0, 0, 1.8638634161, 2.6123301985, 0, 0, 7.9763898859, 
1.0111734668, 11.529038766, 0, 0, 3.5740452832, 0, 0, 0, 
0, 2.9459419649, 0, 0, 0), HR70 = c(0, 0, 1.9151584794, 1.2886431876, 
0, 0, 5.5361789293, 1.6894745734, 9.2738569971, 5.7087400811, 
0, 3.8406882513, 0, 0, 0, 0, 0, 0, 0, 8.1172125492), HC60 = c(0, 
0, 0.3333333333, 0.6666666667, 0, 0, 1, 0.3333333333, 1.3333333333, 
0, 0, 0.6666666667, 0, 0, 0, 0, 0.3333333333, 0, 0, 0), HC70 = c(0, 
0, 0.3333333333, 0.3333333333, 0, 0, 1, 0.6666666667, 1, 
0.3333333333, 0, 0.6666666667, 0, 0, 0, 0, 0, 0, 0, 0.6666666667
), PO60 = c(4304L, 3889L, 17884L, 25520L, 6914L, 5809L, 12537L, 
32965L, 11565L, 7904L, 2624L, 18653L, 6458L, 5566L, 5886L, 
4698L, 11315L, 10641L, 5624L, 10064L), PO70 = c(3987L, 3655L, 
17405L, 25867L, 6025L, 5484L, 18063L, 39460L, 10783L, 5839L, 
2359L, 17358L, 5779L, 4564L, 4739L, 3828L, 9496L, 11549L, 
4645L, 8213L), RD60 = c(-0.17510549, -0.836868285, -0.537371617, 
-0.820169785, -0.93617014, -0.850319046, -1.40425979, -1.136291549, 
-0.314596351, -1.245690305, -0.972029373, -1.149784334, -0.591604056, 
-0.173043012, -0.048135919, -0.516882533, -0.550614009, 0.5252124234, 
-0.549590586, -0.005570979), RD70 = c(-0.1965356, -0.847855576, 
-0.225283145, -0.391126083, -0.45145694, -0.630179478, -1.542621404, 
-0.884559174, 0.2010717469, -0.636244755, -0.730313484, -0.769094521, 
-0.92383632, -0.582953792, -0.7195375, -0.893953808, -0.325512315, 
0.6192301296, 0.0670489427, -0.022077556), PS60 = c(-1.449946096, 
-1.707205577, -0.568146453, -0.554938608, -1.106438634, -1.20839428, 
-0.98204569, -0.346093185, -0.966681816, -1.116701907, -1.864842975, 
-0.592590111, -1.224457678, -1.248144375, -1.153201929, -1.247070389, 
-0.787183304, -0.625011616, -1.164168197, -0.842095066), 
PS70 = c(-1.462559387, -1.697719914, -0.591883439, -0.552016041, 
-1.181753555, -1.21941739, -0.697968638, -0.2317217, -1.002008852, 
-1.313787543, -1.878456577, -0.648495216, -1.274861798, -1.360590663, 
-1.283436317, -1.362946989, -0.907080663, -0.56253244, -1.274896982, 
-0.979372569), UE60 = c(7.9, 8.2, 10.1, 7.5, 10.6, 10.8, 
17.3, 13.8, 12.8, 5.5, 5.1, 6.3, 5.5, 5.1, 3.5, 4.1, 5.3, 
14.4, 6, 5.1), UE70 = c(9, 15.4, 9, 10.5, 13.4, 12.1, 10.3, 
9.8, 12.6, 3.6, 0.5, 4.3, 3, 4, 4.2, 6, 4.7, 11.9, 2.3, 3.3
), DV60 = c(1.858974359, 2.8632784538, 2.7114466184, 3.3720410898, 
3.0089878859, 2.5904203324, 3.4371395617, 2.5964850305, 3.8611039129, 
3.3008252063, 2.39912759, 2.4852844997, 1.7998244074, 1.1499760422, 
1.8885741265, 0.8891523414, 1.1185682327, 1.6148689823, 0.8713480267, 
0.8155230596), DV70 = c(2.6198083067, 3.6860068259, 2.9763779528, 
4.0903860236, 4.0106951872, 3.4893992933, 3.7966739881, 3.2997316702, 
3.5012809564, 4.0658276864, 3.1137724551, 2.514011209, 1.9626168224, 
1.529219006, 1.3264129181, 1.4035087719, 1.8281036835, 1.6844469399, 
1.4084507042, 0.8643617021), MA60 = c(28.8, 25.9, 29.6, 29.4, 
31.2, 27.6, 24.8, 30.1, 22.8, 25.9, 24.8, 24, 29.2, 29.2, 
29.7, 27.9, 28.3, 19.5, 29.5, 27), MA70 = c(30.5, 27.1, 31.8, 
31.1, 33.8, 30.3, 25.1, 28, 22.1, 29.4, 26.9, 24.2, 31.3, 
34.6, 33.4, 30.7, 32, 18.7, 33.2, 31.4), POL60 = c(8.3673001018, 
8.2659073342, 9.7916617374, 10.147217737, 8.8413036205, 8.667163718, 
9.4364395511, 10.403201672, 9.3557385747, 8.9751242394, 7.8724551501, 
9.83376227, 8.7730749513, 8.6244319421, 8.6803319288, 8.4548921652, 
9.3338845581, 9.2724697434, 8.6347984335, 9.2167199789), 
POL70 = c(8.2907943474, 8.2038513722, 9.7645128002, 10.160723304, 
8.7036727584, 8.6095900407, 9.8016209261, 10.58304278, 9.2857260989, 
8.6723148283, 7.7659930794, 9.7618087742, 8.6619859363, 8.425954711, 
8.463581422, 8.2500977526, 9.1586259363, 9.3543541321, 8.4435466512, 
9.0134735437), DNL60 = c(1.1887546181, 0.5687860169, 1.9752447537, 
1.5715669765, 1.5956485529, 1.5164622604, 1.2165748092, 1.8589771411, 
1.3614435882, 1.3995395879, 0.6007514432, 1.8520289834, 1.3382270761, 
1.4543123986, 1.6601412205, 1.6681752146, 1.9091227962, 2.4557338628, 
1.6849419785, 1.8955314222), DNL70 = c(1.1122488636, 0.5067300549, 
1.9480958166, 1.585072543, 1.4580176908, 1.4588885831, 1.5817561842, 
2.0388182491, 1.2914311125, 1.0967301767, 0.4942893725, 1.7800754875, 
1.2271380611, 1.2558351675, 1.4433907137, 1.463380802, 1.7338641745, 
2.5376182515, 1.4936901962, 1.692284987), MFIL59 = c(8.2201339572, 
8.5197898173, 8.403352375, 8.4799066066, 8.5083542427, 8.423102268, 
8.6094076754, 8.5926716526, 8.5504345252, 8.703340753, 8.6755635274, 
8.7339161749, 8.4228825119, 8.3390230057, 8.2456469009, 8.3219079682, 
8.3556149958, 8.1092249531, 8.4474142968, 8.2779202582), 
MFIL69 = c(8.7083092959, 9.0067543199, 8.8688354928, 8.969923492, 
8.8952185838, 8.946505026, 9.1810145426, 9.055672892, 8.942983666, 
9.0478214425, 9.0595174822, 9.0961633269, 9.0596337546, 8.8192218576, 
8.810012048, 8.9685235554, 8.9061223309, 8.7859982081, 8.8597894947, 
8.7677962556), FP59 = c(36.3, 22.5, 30.9, 25, 26.7, 27.2, 
16.8, 20, 28.7, 12.7, 16, 14.7, 27.9, 35.9, 37.8, 31.1, 25.7, 
45.2, 25.7, 35.2), FP69 = c(16.1, 11.6, 15.9, 12.9, 18.3, 
11.1, 5.9, 10.1, 23.4, 10.9, 8.1, 11.1, 8.2, 14.6, 14.6, 
10.7, 13.3, 28.9, 14.7, 14.5), BLK60 = c(0.4414498141, 0.0771406531, 
0.0782822635, 0.0979623824, 0.0289268152, 0, 0.0239291697, 
0.0819050508, 0.2075226978, 0.0126518219, 0, 0.1286656302, 
0.0929080211, 0.3413582465, 0, 0, 0.0353513036, 0.0939761301, 
0.0177809388, 0.029809221), BLK70 = c(0.4765487835, 2.2982216142, 
0.091927607, 0.2822128581, 0.0165975104, 0.0547045952, 0.0221447157, 
0.0760263558, 0.027821571, 0, 0, 0.4551215578, 0.0173040318, 
1.0297984224, 0.0211014982, 0, 0.0315922494, 0.05195255, 
0, 0), GI59 = c(0.2852352228, 0.2561578434, 0.2839986298, 
0.2585395475, 0.243262959, 0.2619385918, 0.2114246328, 0.2419263375, 
0.3168864307, 0.2399049248, 0.2863521291, 0.2596778551, 0.2699909989, 
0.3029912281, 0.2890553776, 0.2665788382, 0.2647430473, 0.3438081357, 
0.2705343299, 0.3234004078), GI69 = c(0.3723362149, 0.3606653751, 
0.3940828825, 0.3712181838, 0.3656140744, 0.3503513633, 0.2955509596, 
0.335356855, 0.3813660816, 0.3548185932, 0.3793765473, 0.3441587348, 
0.3427664904, 0.331764502, 0.341186868, 0.3280738529, 0.3836338256, 
0.3764732409, 0.417577773, 0.4092742788), FH60 = c(11.279620853, 
10.053475936, 9.2584369449, 9.0399002494, 8.2439299831, 7.1129707113, 
6.8727392305, 7.8634122881, 12.644595134, 9.4444444444, 9.2257001647, 
9.3560429305, 10.403530895, 11.547344111, 13.005390836, 9.8464317977, 
11.198501873, 14.565425024, 11.881918819, 12.213740458), 
FH70 = c(5.4, 2.6, 5.6, 8.1, 4.1, 6.8, 3.7, 6.4, 11.4, 8, 
5.6, 7.5, 6, 5.5, 2.5, 5.3, 6.8, 13.5, 8.4, 6.4)), row.names = c(NA, 
20L), class = "data.frame")

1 个答案:

答案 0 :(得分:0)

我在下面发布sjPlot软件包创建者的答案。它包括解决方案:

对于边缘效应图(类型=“ pred”和类型=“ eff”),plot_model()仅包装ggeffects包。

请参阅以下插图,以了解可以选择其值的不同选项: https://strengejacke.github.io/ggeffects/articles/effectsatvalues.html

(以及作为介绍)https://strengejacke.github.io/ggeffects/articles/marginaleffects.html

或sjPlot中的此插图: https://strengejacke.github.io/sjPlot/articles/plot_interactions.html

例如,使用

plot_model(model14,type =“ pred”,条款= c(“ BLK70”,“ FP59 [meansd]”)) plot_model(model14,type =“ pred”,条件= c(“ BLK70”,“ FP59 [quart]”))