gpt4 book ai didi

r - plot_model 错误(类型 ="diag"): arguments imply differing number of rows error

转载 作者:行者123 更新时间:2023-12-04 09:45:40 26 4
gpt4 key购买 nike

我正在做一个回归分析并用这个代码制作回归模型,

regrs_2 <- lm(gii.score ~ hof.pdi + hof.idv + hof.mas + hof.uai + hof.ltowvs + 
hof.ivr + ctnt.dummy.asia + ctnt.dummy.europe + ctnt.dummy.noram +
ctnt.dummy.africa + ctnt.dummy.oceania, data = data)
library(sjPlot)
plot_model(regrs_2, type="diag")

并运行此代码:
sjPlot::plot_model(regrs_2,type="diag")

这时候出现了一个错误,说:

Error in data.frame(x = fitted_, y = res_) : 
arguments imply differing number of rows: 61, 60**

但是当我改变了 type= plot_model 的论据来自 "diag""std""est"没有错误。

我该如何解决这个问题?

这是我的 data :
structure(list(X = c(4L, 5L, 11L, 31L, 32L, 41L, 57L, 91L, 93L, 
94L, 1L, 2L, 3L, 6L, 7L, 8L, 9L, 10L, 12L, 13L, 14L, 15L, 16L,
17L, 18L, 19L, 20L, 21L, 22L, 23L, 24L, 25L, 26L, 27L, 28L, 29L,
30L, 33L, 34L, 35L, 36L, 37L, 38L, 39L, 40L, 42L, 43L, 44L, 45L,
46L, 47L, 48L, 49L, 50L, 51L, 52L, 53L, 54L, 55L, 56L, 58L, 59L,
60L, 61L, 62L, 63L, 64L, 65L, 66L, 67L, 68L, 69L, 70L, 71L, 72L,
73L, 74L, 75L, 76L, 77L, 78L, 79L, 80L, 81L, 82L, 83L, 84L, 85L,
86L, 87L, 88L, 89L, 90L, 92L), ctnt = structure(c(6L, 3L, 6L,
5L, 3L, 6L, 6L, 3L, 6L, 6L, 2L, 2L, 2L, 4L, 6L, 6L, 6L, 6L, 6L,
6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 1L, 2L, 1L, 1L, 1L, 1L,
1L, 3L, 3L, 5L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L,
4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 6L, 6L, 6L, 6L, 6L, 6L, 6L,
6L, 6L, 6L, 6L, 6L, 3L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 2L, 2L,
2L, 2L, 1L, 1L, 3L, 1L, 2L, 3L, 3L, 3L, 3L), .Label = c("남아메리카",
"북아메리카", "아시아", "아프리카", "오세아니아", "유럽"), class = "factor"),
c_code = c(7L, 20L, 34L, 61L, 62L, 90L, 351L, 971L, 994L,
995L, 1L, 1L, 1L, 27L, 30L, 31L, 32L, 33L, 36L, 39L, 40L,
41L, 43L, 44L, 45L, 46L, 47L, 48L, 49L, 51L, 52L, 54L, 55L,
56L, 57L, 58L, 60L, 63L, 64L, 65L, 66L, 81L, 82L, 84L, 86L,
91L, 92L, 98L, 212L, 213L, 223L, 226L, 233L, 234L, 250L,
251L, 255L, 256L, 260L, 263L, 352L, 353L, 354L, 355L, 356L,
357L, 358L, 359L, 370L, 371L, 372L, 373L, 374L, 375L, 380L,
381L, 382L, 385L, 387L, 420L, 421L, 502L, 503L, 506L, 507L,
593L, 598L, 852L, 868L, 876L, 880L, 962L, 966L, 972L), country = structure(c(73L,
27L, 80L, 6L, 43L, 86L, 71L, 3L, 8L, 33L, 16L, 25L, 87L,
79L, 37L, 62L, 11L, 32L, 40L, 47L, 72L, 82L, 7L, 36L, 24L,
81L, 65L, 70L, 34L, 68L, 58L, 4L, 13L, 17L, 19L, 91L, 55L,
69L, 63L, 77L, 84L, 49L, 51L, 92L, 18L, 42L, 66L, 44L, 61L,
2L, 56L, 15L, 35L, 64L, 74L, 30L, 83L, 88L, 93L, 94L, 54L,
45L, 41L, 1L, 57L, 22L, 31L, 14L, 53L, 52L, 29L, 59L, 5L,
10L, 89L, 76L, 60L, 21L, 12L, 23L, 78L, 38L, 28L, 20L, 67L,
26L, 90L, 39L, 85L, 48L, 9L, 50L, 75L, 46L), .Label = c("Albania",
"Algeria", "Arab countries", "Argentina", "Armenia", "Australia",
"Austria", "Azerbaijan", "Bangladesh", "Belarus", "Belgium",
"Bosnia", "Brazil", "Bulgaria", "Burkina Faso", "Canada",
"Chile", "China", "Colombia", "Costa Rica", "Croatia", "Cyprus",
"Czech Rep", "Denmark", "Dominican Rep", "Ecuador", "Egypt",
"El Salvador", "Estonia", "Ethiopia", "Finland", "France",
"Georgia", "Germany", "Ghana", "Great Britain", "Greece",
"Guatemala", "Hong Kong", "Hungary", "Iceland", "India",
"Indonesia", "Iran", "Ireland", "Israel", "Italy", "Jamaica",
"Japan", "Jordan", "Korea South", "Latvia", "Lithuania",
"Luxembourg", "Malaysia", "Mali", "Malta", "Mexico", "Moldova",
"Montenegro", "Morocco", "Netherlands", "New Zealand", "Nigeria",
"Norway", "Pakistan", "Panama", "Peru", "Philippines", "Poland",
"Portugal", "Romania", "Russia", "Rwanda", "Saudi Arabia",
"Serbia", "Singapore", "Slovak", "South Africa", "Spain",
"Sweden", "Switzerland", "Tanzania", "Thailand", "Trinidad and Tobago",
"Turkey", "U.S.A.", "Uganda", "Ukraine", "Uruguay", "Venezuela",
"Vietnam", "Zambia", "Zimbabwe"), class = "factor"), hof.pdi = c(44L,
NA, 24L, 11L, 39L, 31L, 28L, 40L, NA, NA, 12L, NA, 13L, NA,
26L, 11L, 30L, 33L, 17L, 20L, 43L, 9L, 2L, 10L, 4L, 7L, 7L,
33L, 10L, 29L, 41L, 19L, 34L, 28L, 32L, 41L, 1L, 45L, 5L,
37L, 29L, 21L, 26L, 35L, 40L, 38L, 22L, 25L, 35L, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, 13L, 6L, NA, NA, 23L,
NA, 8L, 35L, 14L, 15L, 13L, NA, NA, NA, NA, 42L, NA, 36L,
NA, 24L, 1L, 46L, 31L, 10L, 46L, 39L, 27L, 33L, 18L, 16L,
40L, NA, NA, 3L), hof.idv = c(21L, NA, 25L, 46L, 4L, 19L,
13L, 20L, NA, NA, 44L, NA, 47L, NA, 17L, 44L, 40L, 38L, 44L,
41L, 14L, 35L, 28L, 45L, 39L, 38L, 36L, 32L, 34L, 6L, 14L,
23L, 20L, 10L, 3L, 2L, 12L, 15L, 42L, 9L, 9L, 23L, 7L, 9L,
9L, 24L, 4L, 22L, 23L, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, 32L, 37L, NA, NA, 30L, NA, 33L, 14L, 32L, 37L, 32L,
NA, NA, NA, NA, 11L, NA, 16L, NA, 29L, 26L, 31L, 8L, 5L,
1L, 43L, 18L, 11L, 6L, 21L, 9L, NA, NA, 27L), hof.mas = c(11L,
NA, 16L, 33L, 20L, 19L, 9L, 27L, NA, NA, 26L, NA, 34L, NA,
31L, 2L, 28L, 17L, 44L, 40L, 16L, 40L, 42L, 37L, 3L, 24L,
43L, 36L, 37L, 16L, 39L, 30L, 23L, 7L, 36L, 41L, 25L, 36L,
32L, 22L, 10L, 46L, 14L, 15L, 37L, 30L, 25L, 17L, 27L, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 25L, 38L, NA, NA,
21L, NA, 6L, 15L, 4L, 45L, 8L, NA, NA, NA, NA, 17L, NA, 15L,
NA, 31L, 1L, 12L, 15L, 5L, 18L, 35L, 13L, 31L, 32L, 38L,
29L, NA, NA, 21L), hof.uai = c(43L, NA, 37L, 17L, 14L, 36L,
3L, 27L, NA, NA, 14L, NA, 13L, NA, 4L, 18L, 42L, 37L, 35L,
30L, 39L, 20L, 28L, 9L, 6L, 7L, 16L, 41L, 25L, 38L, 35L,
37L, 31L, 37L, 33L, 31L, 10L, 12L, 15L, 32L, 24L, 40L, 36L,
8L, 8L, 11L, 28L, 21L, 27L, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, 28L, 9L, NA, NA, 44L, NA, 21L, 36L, 25L, 23L,
22L, NA, NA, NA, NA, 40L, NA, 33L, NA, 29L, 17L, 2L, 42L,
37L, 37L, 26L, 1L, 7L, 19L, 5L, 22L, NA, NA, 34L), hof.ltowvs = c(50L,
43L, 29L, 8L, 38L, 27L, 14L, 9L, 37L, 22L, 21L, 2L, 12L,
19L, 26L, 41L, 51L, 39L, 35L, 37L, 32L, 47L, 36L, 31L, 20L,
33L, 20L, 22L, 52L, 11L, 10L, 7L, 25L, 16L, 2L, 5L, 24L,
13L, 18L, 46L, 17L, 55L, 1L, 34L, 54L, 31L, 30L, 3L, 3L,
12L, 7L, 13L, 23L, 2L, 6L, NA, 19L, 10L, 15L, 4L, 40L, 10L,
14L, 37L, 28L, NA, 22L, 42L, 51L, 42L, 51L, 45L, 37L, 50L,
53L, 32L, 48L, 35L, 44L, 44L, 49L, NA, 7L, NA, NA, NA, 12L,
37L, 2L, NA, 28L, 5L, 21L, 22L), hof.ivr = c(10L, 25L, 29L,
50L, 24L, 33L, 20L, 21L, 11L, 19L, 47L, 37L, 47L, 43L, 34L,
47L, 40L, 32L, 18L, 17L, 10L, 45L, 43L, 48L, 49L, 53L, 38L,
16L, 26L, 31L, 58L, 42L, 41L, 47L, 55L, 2L, 40L, 27L, 52L,
31L, 30L, 27L, 16L, 22L, 12L, 14L, 1L, 26L, 13L, 19L, 28L,
8L, 51L, 56L, 23L, 31L, 24L, 35L, 27L, 15L, 39L, 44L, 46L,
5L, 45L, 49L, 40L, 6L, 6L, 3L, 6L, 9L, NA, 5L, 4L, 15L, 10L,
20L, 29L, 16L, 15L, NA, 57L, NA, NA, NA, 36L, 7L, 54L, NA,
10L, 28L, 35L, NA), gii.score = c(39.32, 28.91, 49.07, 55.22,
29.79, 37.81, 46.61, 40.06, 30.1, 33.83, 55.73, 30.6, 60.1,
37.45, 40.28, 61.58, 50.91, 53.59, 43, 46.4, 38.2, 68.3,
54.07, 62.42, 57.7, 62.4, 53.8, 40.16, 57.05, 34.87, 38.03,
34.3, 34.95, 41.2, 36.41, 22.77, 45.98, 31.05, 55.92, 59.36,
38.1, 53.97, 56.26, 38.35, 47.47, 31.74, 23.07, 28.37, 33.19,
24.38, 28.37, 28.68, 28.04, 23.72, 30.09, 24.17, 27, 27.65,
24.64, 22.52, 59.02, 59.13, 57.02, 30.74, 50.48, 43.51, 59.97,
42.16, 42.26, 45.51, 52.81, 40.53, 37.31, 38.23, 36.45, 36.47,
41.23, 41.7, 32.31, 51.32, 42.99, 28.84, 29.31, 38.59, 36.8,
26.87, 35.76, 57.23, 32.18, 29.95, 23.71, 33.78, 40.65, 53.54
), ctnt.dummy.asia = c(0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
0, 0, 1, 1, 1, 1), ctnt.dummy.europe = c(1, 0, 1, 0, 0, 1,
1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), ctnt.dummy.noram = c(0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0), ctnt.dummy.africa = c(0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), ctnt.dummy.oceania = c(0,
0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), ctnt.dummy.souam = c(0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0)), row.names = c(NA,
-94L), class = "data.frame")

最佳答案

检查 sjPlot::plot_model 的代码函数显示 sjPlot:::plot_diag_linear方法被使用并产生错误。

# sjPlot:::plot_diag_linear(regrs_2, geom.colors="red", dot.size=1, line.size=1)
# # Error in data.frame(x = fitted_, y = res_) :
# # arguments imply differing number of rows: 61, 60

更深入地了解代码,我们到达了情节列表,其中 sjPlot:::diag_qq正在失败。
sjPlot:::diag_vif(regrs_2)

enter image description here
# sjPlot:::diag_qq(regrs_2, dot.size=1, line.size=1)  ## FAILS!
# # Error in data.frame(x = fitted_, y = res_) :
# # arguments imply differing number of rows: 61, 60
sjPlot:::diag_norm(regrs_2, geom.colors="red")
# Warning message:
# Removed 101 row(s) containing missing values (geom_path).

enter image description here
sjPlot:::diag_ncv(regrs_2, dot.size=1, line.size=1)
# `geom_smooth()` using formula 'y ~ x'

enter image description here

还会抛出警告。该问题可能是由于统计原因造成的,因为 ?sjPlot::plot_model 上的示例工作正常。

我知道只有部分答案,希望能以某种方式帮助您。

关于r - plot_model 错误(类型 ="diag"): arguments imply differing number of rows error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62129701/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com