繁体   English   中英

R 中的逻辑回归 glm() 无法识别数值

[英]Logistic Regression glm() in R not recognizing numerical values

我对 R 和机器学习相当陌生,我正在尝试构建一个逻辑回归模型,该模型可以预测哪些临床变量可以更好地预测死亡结果(0 表示死亡,1 表示存在于下面的数据集中)。

这是数据的dput

structure(list(ID = c(13154920, 13201107, 13207948, 13234892, 
13082943, 13193903, 13283776, 13154288, 13269178, 13055690, 13207670, 
13220627, 13055009, 13044947, 13060589, 13201616, 13054278, 13160156, 
13160971, 13239318, 13321288, 13154966, 13165362, 12999835, 13223721, 
13064865, 13104602, 13036280, 13040507, 12964437, 13029805, 13029001, 
12993036, 13072516, 13060586, 13119819, 13040632, 13055908, 13059026, 
13207119, 13261022, 13259391, 13262499, 13207315, 13135316, 13233898, 
13181075, 13261607, 13186960, 13240091, 13260671, 13302375, 13021555, 
13062360, 13035346, 13077712, 13128769, 13267480, 13040172, 12977871, 
13090190, 13040530, 13100979, 13192142, 13289317, 13315577, 13044653, 
13079694, 13128639, 13207352, 13049409, 13210994, 13283675), 
    outcome = 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, 0, 0, 0, 0, 0, 
    0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
    1), day = 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, 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), pa02 = c("121", "NA", "78.7", "69.099999999999994", "131", 
    "26.3", "68.900000000000006", "74.099999999999994", "118", 
    "404", "399", "NA", "NA", "73.7", "265", "75", "222", "112", 
    "133", "77.900000000000006", "64.7", "84", "92.2", "107", 
    "64.599999999999994", "56.6", "69.900000000000006", "130", 
    "91.4", "NA", "111", "79.2", "86.9", "65.7", "94.5", "129", 
    "NA", "157,0", "32,8", "160,0", "38,1", "61,7", "NA", "86,8", 
    "86,5", "87,4", "143,0", "57,8", "NA", "88,6", "94,3", "NA", 
    "70,0", "107,0", "57,2", "75,9", "148,0", "NA", "60,4", "NA", 
    "NA", "148,0", "75,3", "75,4", "58", "46,4", "82,3", "189,0", 
    "132,0", "96,5", "112,0", "67,0", "65"), iot = c("0", "1", 
    "1", "0", "1", "0", "0", "0", "1", "1", "0", "0", "0", "1", 
    "0", "0", "0", "0", "1", "1", "0", "0", "0", "0", "1", "1", 
    "1", "0", "1", "0", "1", "0", "1", "0", "1", "1", "1", "1", 
    "0", "0", "1", "0", "0", "0", "0", "0", "1", "0", "0", "0", 
    "0", "0", "0", "1", "0", "1", "0", "1", "0", "1", "0", "1", 
    "0", "0", "0", "0", "1", "0", "1", "0", "1", "0", "0"), fio2 = c("0.23", 
    "1", "0.6", "0.23", "1", "0.23", "0.23", "0.23", "0.4", "1", 
    "0.23", "0.23", "0.23", "1", "0.23", "0.23", "0.23", "0.23", 
    "0.5", "0.5", "0.23", "0.23", "0.23", "0.23", "0.75", "NA", 
    "NA", "0.23", "0.1", "0.23", "NA", "0.23", "NA", "0.23", 
    "1", "0.5", "0.4", "0.45", "0.23", "0.23", "0.7", "0.23", 
    "0.23", "0.23", "0.23", "0.23", "1", "0.23", "0.23", "0.23", 
    "0.23", "0.23", "0.23", "1", "0.23", "1", "0.23", "0.8", 
    "0.23", "0.4", "0.23", "0.4", "0.23", "0.23", "0.23", "0.23", 
    "0.3", "0.23", "0.8", "0.23", "0.3", "0.23", "0.23"), resp_syst = c("526.08695652173913", 
    "NA", "131.16666666666669", "300.43478260869563", "131", 
    "114.34782608695652", "299.56521739130437", "322.17391304347819", 
    "295", "404", "1734.782608695652", "NA", "NA", "73.7", "1152.1739130434783", 
    "326.08695652173913", "965.21739130434776", "486.95652173913044", 
    "266", "155.80000000000001", "281.30434782608694", "365.21739130434781", 
    "400.86956521739131", "465.21739130434781", "86.133333333333326", 
    "NA", "NA", "565.21739130434776", "914", "NA", "NA", "344.3478260869565", 
    "NA", "285.6521739130435", "94.5", "258", "NA", "348.88888888888886", 
    "142.60869565217391", "695.6521739130435", "54.428571428571431", 
    "268.26086956521738", "NA", "377.39130434782606", "376.08695652173913", 
    "380", "143", "251.30434782608694", "NA", "385.21739130434776", 
    "409.99999999999994", "NA", "304.3478260869565", "107", "248.69565217391303", 
    "75.900000000000006", "643.47826086956513", "NA", "262.60869565217388", 
    "NA", "NA", "370", "327.39130434782606", "327.82608695652175", 
    "252.17391304347825", "201.7391304347826", "274.33333333333331", 
    "821.73913043478262", "165", "419.56521739130432", "373.33333333333337", 
    "291.30434782608694", "282.60869565217388"), resp_score = c(0, 
    NA, 3, 1, 3, 2, 2, 1, 2, 0, 0, NA, NA, 4, 0, 1, 0, 0, 2, 
    3, 2, 1, 0, 0, 4, NA, NA, 0, 0, NA, NA, 1, NA, 2, 4, 2, NA, 
    1, 2, 0, 4, 2, NA, 1, 1, 1, 3, 2, NA, 1, 0, NA, 1, 3, 2, 
    4, 0, NA, 2, NA, NA, 1, 1, 1, 2, 2, 2, 0, 2, 0, 1, 2, 2), 
    platelets = c("NA", "363000", "NA", "NA", "620000", "NA", 
    "419000", "277000", "NA", "NA", "277000", "255000", "NA", 
    "185000", "318000", "296000", "182000", "48000", "129000", 
    "260000", "254000", "213000", "132000", "293000", "NA", "99000", 
    "297000", "227000", "174000", "172000", "76000", "NA", "242000", 
    "181000", "90000", "NA", "NA", "264000", "331000", "237000", 
    "279000", "NA", "214000", "NA", "NA", "283000", "416000", 
    "349000", "NA", "243000", "635000", "100000", "165000", "343000", 
    "NA", "423000", "206000", "NA", "439000", "NA", "358000", 
    "253000", "130000", "NA", "498000", "415000", "236000", "440000", 
    "218000", "300000", "190000", "244000", "275000"), coag_score = c(NA, 
    0, NA, NA, 0, NA, 0, 0, NA, NA, 0, 0, NA, 0, 0, 0, 0, 3, 
    1, 0, 0, 0, 1, 0, NA, 2, 0, 0, 0, 0, 2, NA, 0, 0, 2, NA, 
    NA, 0, 0, 0, 0, NA, 0, NA, NA, 0, 0, 0, NA, 0, 0, 2, 0, 0, 
    NA, 0, 0, NA, 0, NA, 0, 0, 1, NA, 0, 0, 0, 0, 0, 0, 0, 0, 
    0), bilirrubin = c("NA", "0.4", "NA", "0.5", "0.3", "NA", 
    "0.9", "NA", "0.4", "NA", "0.5", "NA", "NA", "1.1000000000000001", 
    "NA", "0.3", "NA", "0.5", "NA", "0.3", "0.3", "NA", "NA", 
    "0.4", "NA", "0.5", "0.4", "0.4", "1", "0.5", "NA", "NA", 
    "NA", "NA", "NA", "0.3", "0.3", "1", "0.7", "0.3", "1.4", 
    "NA", "NA", "0.3", "0.3", "0.3", "0.7", "0.4", "NA", "NA", 
    "NA", "0.7", "0.6", "0.5", "NA", "NA", "0.3", "0.3", "NA", 
    "NA", "NA", "0.4", "0.3", "NA", "NA", "0.4", "1.1000000000000001", 
    "NA", "0.5", "1.4", "0.4", "0.6", "0.7"), liver_score = c(NA, 
    0, NA, 0, 0, NA, 0, NA, 0, NA, 0, NA, NA, 0, NA, 0, NA, 0, 
    NA, 0, 0, NA, NA, 0, NA, 0, 0, 0, 0, 0, NA, NA, NA, NA, NA, 
    0, 0, 0, 0, 0, 1, NA, NA, 0, 0, 0, 0, 0, NA, NA, NA, 0, 0, 
    0, NA, NA, 0, 0, NA, NA, NA, 0, 0, NA, NA, 0, 0, NA, 0, 0, 
    0, 0, 0), pam = c("NA", "80.666666666666671", "73.333333333333329", 
    "83.333333333333329", "84.666666666666671", "100.6666666666667", 
    "101", "100", "95", "69.333333333333329", "93.666666666666671", 
    "70", "91.666666666666671", "70.666666666666671", "81.666666666666671", 
    "71.333333333333329", "95.333333333333329", "92", "77.666666666666671", 
    "84.333333333333329", "90", "80", "96.333333333333329", "93.333333333333329", 
    "69.333333333333329", "57.333333333333343", "80", "63", "81.666666666666671", 
    "80", "76.666666666666671", "90", "62.666666666666657", "89.333333333333329", 
    "87.333333333333329", "72.333333333333329", "93.333333333333329", 
    "87.666666666666671", "105.3333333333333", "107.6666666666667", 
    "69.333333333333329", "111.3333333333333", "75.666666666666671", 
    "103", "85.333333333333329", "86.666666666666671", "64.333333333333329", 
    "93.333333333333329", "87.333333333333329", "100", "106.6666666666667", 
    "96.666666666666671", "102", "98.666666666666671", "83.333333333333329", 
    "73.666666666666671", "95.333333333333329", "81", "93.333333333333329", 
    "62.666666666666657", "83.333333333333329", "93", "92.333333333333329", 
    "73.333333333333329", "87.333333333333329", "74.333333333333329", 
    "95.333333333333329", "80.333333333333329", "83.333333333333329", 
    "96.333333333333329", "97.666666666666671", "91.666666666666671", 
    "85.333333333333329"), catecolamine = c("10 ml/h", "0,1 mcg/kg/min", 
    "0", "0", "0,1mcg/kg/min", "0", "0", "0", "0", "0,8 mcg/kg/min", 
    "0,1 mcg/kg/min", "0", "0", "0,3mcg/kg/min", "0,15 mcg/kg/min", 
    "0,13mcg/kg/min", "6ml/h", "0", "0", "0,03mcg/kg/min", "0", 
    "0", "0", "0", "9mL/h", "0", "0", "0.45", "5.5555555555555558E-3", 
    "0", "NA", "0", "0.2857142857142857", "0", "0.32258064516129031", 
    "0", "0.16", "0,05mcg/kg/min", "0", "0", "0", "0", "0", "0", 
    "0", "0", "0,1mcg/Kg/min", "0", "0", "0", "0", "0", "0", 
    "0", "0", "10ml/hr", "0", "0", "0", "30ml/h", "0", "0", "0", 
    "0", "0", "0", "0", "10 ml/h", "0", "0", "0", "0", "0"), 
    cardiovas_score = c(NA, 3, 0, 0, 3, 0, 0, 0, 0, 4, 3, 0, 
    0, 4, 4, 4, 3, 0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 4, 4, 0, NA, 
    0, 4, 0, 4, 0, 4, 3, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 
    0, 0, 0, 0, 0, NA, 0, 0, 0, NA, 0, 0, 0, 0, 0, 0, 0, NA, 
    0, 0, 0, 0, 0), creatinine = c("0.62", "2.21", "NA", "1.25", 
    "1.84", "0.94", "0.77", "0.41", "1.58", "NA", "2.4500000000000002", 
    "0.21", "NA", "1.65", "2.77", "2.1800000000000002", "1.1299999999999999", 
    "0.49", "0.53", "1.34", "1.23", "0.8", "0.65", "2.9", "0.45", 
    "1.05", "0.72", "5.14", "0.65", "0.47", "1.46", "NA", "2.77", 
    "2.21", "0.97", "0.35", "NA", "1.83", "0.78", "0.45", "1.23", 
    "NA", "0.59", "1.21", "0.61", "0.75", "1.23", "0.74", "NA", 
    "0.88", "0.65", "3.48", "0.7", "0.88", "NA", "1.1499999999999999", 
    "0.59", "0.6", "0.41", "NA", "0.66", "0.72", "0.69", "NA", 
    "NA", "1.29", "0.8", "0.94", "0.48", "1.1399999999999999", 
    "0.85", "0.74", "0.86"), renal_score = c(0, 2, NA, 1, 1, 
    0, 0, 0, 0, NA, 2, 0, NA, 1, 2, 2, 1, 0, 0, 1, 1, 0, 0, 2, 
    0, 0, 0, 4, 0, 0, 1, NA, 2, 2, 0, 0, NA, 1, 0, 0, 1, NA, 
    0, 1, 0, 0, 1, 0, NA, 0, 0, 3, 0, 0, NA, 0, 0, 0, 0, NA, 
    0, 0, 0, NA, NA, 1, 0, 0, 0, 0, 0, 0, 0), `SOFA SCORE` = c(0, 
    5, 3, 2, 7, 2, 2, 1, 2, 4, 5, 0, 0, 9, 6, 6, 4, 3, 3, 7, 
    3, 1, 0, 2, 7, 2, 0, 8, 4, 0, 3, 1, 6, 4, 10, 2, 4, 5, 2, 
    0, 7, 2, 0, 2, 1, 1, 7, 2, 0, 1, 0, 5, 1, 3, 2, 4, 0, 0, 
    2, 3, 0, 1, 1, 1, 2, 3, 2, 3, 2, 0, 1, 2, 2)), row.names = c(NA, 
-73L), class = c("tbl_df", "tbl", "data.frame"))

我试过了

test <- glm(sofa_t0_deadoralive$outcome ~ resp_score + coag_score + liver_score + cardiovas_score + renal_score, family =  binomial)

哪些输出

Warning message:
glm.fit: fitted probabilities numerically 0 or 1 occurred 

当我使用

glm(formula = sofa_t0_deadoralive$outcome ~ resp_score + coag_score + 
    liver_score + cardiovas_score + renal_score, family = binomial)

我得到

Deviance Residuals: 
    Min       1Q   Median       3Q      Max  
-1.9432  -0.5247   0.0000   0.5729   1.5111  

Coefficients: (1 not defined because of singularities)
                    Estimate Std. Error z value Pr(>|z|)  
(Intercept)        2.543e+00  1.429e+00   1.779   0.0752 .
resp_score1       -5.534e-02  1.381e+00  -0.040   0.9680  
resp_score2       -8.189e-01  1.415e+00  -0.579   0.5627  
resp_score3       -1.803e+00  1.664e+00  -1.084   0.2784  
resp_score4       -1.639e+01  4.315e+03  -0.004   0.9970  
resp_scoreNA      -1.282e+00  1.460e+00  -0.878   0.3799  
coag_score1       -1.889e+00  1.538e+00  -1.228   0.2193  
coag_score2       -1.917e+01  4.706e+03  -0.004   0.9967  
coag_score3       -2.211e+01  1.075e+04  -0.002   0.9984  
coag_scoreNA      -1.777e+00  9.772e-01  -1.819   0.0690 .
liver_score1       3.463e+01  1.159e+04   0.003   0.9976  
liver_scoreNA     -1.833e+00  9.257e-01  -1.980   0.0478 *
cardiovas_score1          NA         NA      NA       NA  
cardiovas_score3  -2.795e-01  1.722e+00  -0.162   0.8710  
cardiovas_score4  -1.997e+01  2.782e+03  -0.007   0.9943  
cardiovas_scoreNA -1.747e+01  6.423e+03  -0.003   0.9978  
.
.
.

在这个例子中,为什么 R 将 resp_score、liver_score 和 heartova_score 的每个分数识别为不同的分类数据而不是连续的? 我能做些什么来修复它?

非常感谢任何关于重点的方向。

我按如下方式尝试了您的数据集:

myData <- structure(list(ID = c(13154920, 13201107, 13207948, 13234892, 
                  13082943, 13193903, 13283776, 13154288, 13269178, 13055690, 13207670, 
                  13220627, 13055009, 13044947, 13060589, 13201616, 13054278, 13160156, 
                  13160971, 13239318, 13321288, 13154966, 13165362, 12999835, 13223721, 
                  13064865, 13104602, 13036280, 13040507, 12964437, 13029805, 13029001, 
                  12993036, 13072516, 13060586, 13119819, 13040632, 13055908, 13059026, 
                  13207119, 13261022, 13259391, 13262499, 13207315, 13135316, 13233898, 
                  13181075, 13261607, 13186960, 13240091, 13260671, 13302375, 13021555, 
                  13062360, 13035346, 13077712, 13128769, 13267480, 13040172, 12977871, 
                  13090190, 13040530, 13100979, 13192142, 13289317, 13315577, 13044653, 
                  13079694, 13128639, 13207352, 13049409, 13210994, 13283675), 
           outcome = 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, 0, 0, 0, 0, 0, 
                       0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
                       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
                       1), 
           day = 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, 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), 
           pa02 = c("121", "NA", "78.7", "69.099999999999994", "131", 
                    "26.3", "68.900000000000006", "74.099999999999994", "118", 
                    "404", "399", "NA", "NA", "73.7", "265", "75", "222", "112", 
                    "133", "77.900000000000006", "64.7", "84", "92.2", "107", 
                    "64.599999999999994", "56.6", "69.900000000000006", "130", 
                    "91.4", "NA", "111", "79.2", "86.9", "65.7", "94.5", "129", 
                    "NA", "157,0", "32,8", "160,0", "38,1", "61,7", "NA", "86,8", 
                    "86,5", "87,4", "143,0", "57,8", "NA", "88,6", "94,3", "NA", 
                    "70,0", "107,0", "57,2", "75,9", "148,0", "NA", "60,4", "NA", 
                    "NA", "148,0", "75,3", "75,4", "58", "46,4", "82,3", "189,0", 
                    "132,0", "96,5", "112,0", "67,0", "65"), 
           iot = c("0", "1", "1", "0", "1", "0", "0", "0", "1", "1", "0", "0", "0", "1", 
                   "0", "0", "0", "0", "1", "1", "0", "0", "0", "0", "1", "1", 
                   "1", "0", "1", "0", "1", "0", "1", "0", "1", "1", "1", "1", 
                   "0", "0", "1", "0", "0", "0", "0", "0", "1", "0", "0", "0", 
                   "0", "0", "0", "1", "0", "1", "0", "1", "0", "1", "0", "1", 
                   "0", "0", "0", "0", "1", "0", "1", "0", "1", "0", "0"), 
           fio2 = c("0.23", "1", "0.6", "0.23", "1", "0.23", "0.23", "0.23", "0.4", "1", 
                    "0.23", "0.23", "0.23", "1", "0.23", "0.23", "0.23", "0.23", 
                    "0.5", "0.5", "0.23", "0.23", "0.23", "0.23", "0.75", "NA", 
                    "NA", "0.23", "0.1", "0.23", "NA", "0.23", "NA", "0.23", 
                    "1", "0.5", "0.4", "0.45", "0.23", "0.23", "0.7", "0.23", 
                    "0.23", "0.23", "0.23", "0.23", "1", "0.23", "0.23", "0.23", 
                    "0.23", "0.23", "0.23", "1", "0.23", "1", "0.23", "0.8", 
                    "0.23", "0.4", "0.23", "0.4", "0.23", "0.23", "0.23", "0.23", 
                    "0.3", "0.23", "0.8", "0.23", "0.3", "0.23", "0.23"), 
           resp_syst = c("526.08695652173913", "NA", "131.16666666666669", "300.43478260869563", "131", 
                         "114.34782608695652", "299.56521739130437", "322.17391304347819", 
                         "295", "404", "1734.782608695652", "NA", "NA", "73.7", "1152.1739130434783", 
                         "326.08695652173913", "965.21739130434776", "486.95652173913044", 
                         "266", "155.80000000000001", "281.30434782608694", "365.21739130434781", 
                         "400.86956521739131", "465.21739130434781", "86.133333333333326", 
                         "NA", "NA", "565.21739130434776", "914", "NA", "NA", "344.3478260869565", 
                         "NA", "285.6521739130435", "94.5", "258", "NA", "348.88888888888886", 
                         "142.60869565217391", "695.6521739130435", "54.428571428571431", 
                         "268.26086956521738", "NA", "377.39130434782606", "376.08695652173913", 
                         "380", "143", "251.30434782608694", "NA", "385.21739130434776", 
                         "409.99999999999994", "NA", "304.3478260869565", "107", "248.69565217391303", 
                         "75.900000000000006", "643.47826086956513", "NA", "262.60869565217388", 
                         "NA", "NA", "370", "327.39130434782606", "327.82608695652175", 
                         "252.17391304347825", "201.7391304347826", "274.33333333333331", 
                         "821.73913043478262", "165", "419.56521739130432", "373.33333333333337", 
                         "291.30434782608694", "282.60869565217388"), 
           resp_score = c(0, NA, 3, 1, 3, 2, 2, 1, 2, 0, 0, NA, NA, 4, 0, 1, 0, 0, 2, 
                          3, 2, 1, 0, 0, 4, NA, NA, 0, 0, NA, NA, 1, NA, 2, 4, 2, NA, 
                          1, 2, 0, 4, 2, NA, 1, 1, 1, 3, 2, NA, 1, 0, NA, 1, 3, 2, 
                          4, 0, NA, 2, NA, NA, 1, 1, 1, 2, 2, 2, 0, 2, 0, 1, 2, 2), 
           platelets = c("NA", "363000", "NA", "NA", "620000", "NA", 
                         "419000", "277000", "NA", "NA", "277000", "255000", "NA", 
                         "185000", "318000", "296000", "182000", "48000", "129000", 
                         "260000", "254000", "213000", "132000", "293000", "NA", "99000", 
                         "297000", "227000", "174000", "172000", "76000", "NA", "242000", 
                         "181000", "90000", "NA", "NA", "264000", "331000", "237000", 
                         "279000", "NA", "214000", "NA", "NA", "283000", "416000", 
                         "349000", "NA", "243000", "635000", "100000", "165000", "343000", 
                         "NA", "423000", "206000", "NA", "439000", "NA", "358000", 
                         "253000", "130000", "NA", "498000", "415000", "236000", "440000", 
                         "218000", "300000", "190000", "244000", "275000"), 
           coag_score = c(NA, 0, NA, NA, 0, NA, 0, 0, NA, NA, 0, 0, NA, 0, 0, 0, 0, 3,
                          1, 0, 0, 0, 1, 0, NA, 2, 0, 0, 0, 0, 2, NA, 0, 0, 2, NA, 
                          NA, 0, 0, 0, 0, NA, 0, NA, NA, 0, 0, 0, NA, 0, 0, 2, 0, 0, 
                          NA, 0, 0, NA, 0, NA, 0, 0, 1, NA, 0, 0, 0, 0, 0, 0, 0, 0, 0), 
           bilirrubin = c("NA", "0.4", "NA", "0.5", "0.3", "NA", 
                          "0.9", "NA", "0.4", "NA", "0.5", "NA", "NA", "1.1000000000000001", 
                          "NA", "0.3", "NA", "0.5", "NA", "0.3", "0.3", "NA", "NA", 
                          "0.4", "NA", "0.5", "0.4", "0.4", "1", "0.5", "NA", "NA", 
                          "NA", "NA", "NA", "0.3", "0.3", "1", "0.7", "0.3", "1.4", 
                          "NA", "NA", "0.3", "0.3", "0.3", "0.7", "0.4", "NA", "NA", 
                          "NA", "0.7", "0.6", "0.5", "NA", "NA", "0.3", "0.3", "NA", 
                          "NA", "NA", "0.4", "0.3", "NA", "NA", "0.4", "1.1000000000000001", 
                          "NA", "0.5", "1.4", "0.4", "0.6", "0.7"), 
           liver_score = c(NA, 0, NA, 0, 0, NA, 0, NA, 0, NA, 0, NA, NA, 0, NA, 0, NA, 0, 
                           NA, 0, 0, NA, NA, 0, NA, 0, 0, 0, 0, 0, NA, NA, NA, NA, NA, 
                           0, 0, 0, 0, 0, 1, NA, NA, 0, 0, 0, 0, 0, NA, NA, NA, 0, 0, 
                           0, NA, NA, 0, 0, NA, NA, NA, 0, 0, NA, NA, 0, 0, NA, 0, 0, 
                           0, 0, 0), 
           pam = c("NA", "80.666666666666671", "73.333333333333329", "83.333333333333329", 
                   "84.666666666666671", "100.6666666666667", 
                   "101", "100", "95", "69.333333333333329", "93.666666666666671", 
                   "70", "91.666666666666671", "70.666666666666671", "81.666666666666671", 
                   "71.333333333333329", "95.333333333333329", "92", "77.666666666666671", 
                   "84.333333333333329", "90", "80", "96.333333333333329", "93.333333333333329", 
                   "69.333333333333329", "57.333333333333343", "80", "63", "81.666666666666671", 
                   "80", "76.666666666666671", "90", "62.666666666666657", "89.333333333333329", 
                   "87.333333333333329", "72.333333333333329", "93.333333333333329", 
                   "87.666666666666671", "105.3333333333333", "107.6666666666667", 
                   "69.333333333333329", "111.3333333333333", "75.666666666666671", 
                   "103", "85.333333333333329", "86.666666666666671", "64.333333333333329", 
                   "93.333333333333329", "87.333333333333329", "100", "106.6666666666667", 
                   "96.666666666666671", "102", "98.666666666666671", "83.333333333333329", 
                   "73.666666666666671", "95.333333333333329", "81", "93.333333333333329", 
                   "62.666666666666657", "83.333333333333329", "93", "92.333333333333329", 
                   "73.333333333333329", "87.333333333333329", "74.333333333333329", 
                   "95.333333333333329", "80.333333333333329", "83.333333333333329", 
                   "96.333333333333329", "97.666666666666671", "91.666666666666671", 
                   "85.333333333333329"), 
           catecolamine = c("10 ml/h", "0,1 mcg/kg/min", "0", "0", 
                            "0,1mcg/kg/min", "0", "0", "0", "0", "0,8 mcg/kg/min", 
                            "0,1 mcg/kg/min", "0", "0", "0,3mcg/kg/min", "0,15 mcg/kg/min", 
                            "0,13mcg/kg/min", "6ml/h", "0", "0", "0,03mcg/kg/min", "0", 
                            "0", "0", "0", "9mL/h", "0", "0", "0.45", "5.5555555555555558E-3", 
                            "0", "NA", "0", "0.2857142857142857", "0", "0.32258064516129031", 
                            "0", "0.16", "0,05mcg/kg/min", "0", "0", "0", "0", "0", "0", 
                            "0", "0", "0,1mcg/Kg/min", "0", "0", "0", "0", "0", "0", 
                            "0", "0", "10ml/hr", "0", "0", "0", "30ml/h", "0", "0", "0", 
                            "0", "0", "0", "0", "10 ml/h", "0", "0", "0", "0", "0"), 
           cardiovas_score = c(NA, 3, 0, 0, 3, 0, 0, 0, 0, 4, 3, 0, 
                               0, 4, 4, 4, 3, 0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 4, 4, 0, NA, 
                               0, 4, 0, 4, 0, 4, 3, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 
                               0, 0, 0, 0, 0, NA, 0, 0, 0, NA, 0, 0, 0, 0, 0, 0, 0, NA, 
                               0, 0, 0, 0, 0), 
           creatinine = c("0.62", "2.21", "NA", "1.25", "1.84", "0.94", 
                          "0.77", "0.41", "1.58", "NA", "2.4500000000000002", 
                          "0.21", "NA", "1.65", "2.77", "2.1800000000000002", 
                          "1.1299999999999999", "0.49", "0.53", "1.34", 
                          "1.23", "0.8", "0.65", "2.9", "0.45", "1.05", "0.72", 
                          "5.14", "0.65", "0.47", "1.46", "NA", "2.77", "2.21", 
                          "0.97", "0.35", "NA", "1.83", "0.78", "0.45", "1.23", 
                          "NA", "0.59", "1.21", "0.61", "0.75", "1.23", "0.74", 
                          "NA", "0.88", "0.65", "3.48", "0.7", "0.88", "NA", 
                          "1.1499999999999999", "0.59", "0.6", "0.41", "NA", 
                          "0.66", "0.72", "0.69", "NA", "NA", "1.29", "0.8", 
                          "0.94", "0.48", "1.1399999999999999", "0.85", "0.74", 
                          "0.86"), 
           renal_score = c(0, 2, NA, 1, 1, 0, 0, 0, 0, NA, 2, 0, NA, 1, 2, 2, 
                           1, 0, 0, 1, 1, 0, 0, 2, 0, 0, 0, 4, 0, 0, 1, NA, 2, 
                           2, 0, 0, NA, 1, 0, 0, 1, NA, 0, 1, 0, 0, 1, 0, NA, 
                           0, 0, 3, 0, 0, NA, 0, 0, 0, 0, NA, 0, 0, 0, NA, NA, 
                           1, 0, 0, 0, 0, 0, 0, 0), 
           `SOFA SCORE` = c(0, 5, 3, 2, 7, 2, 2, 1, 2, 4, 5, 0, 0, 9, 6, 6, 4, 
                            3, 3, 7, 3, 1, 0, 2, 7, 2, 0, 8, 4, 0, 3, 1, 6, 4, 
                            10, 2, 4, 5, 2, 0, 7, 2, 0, 2, 1, 1, 7, 2, 0, 1, 0, 
                            5, 1, 3, 2, 4, 0, 0, 2, 3, 0, 1, 1, 1, 2, 3, 2, 3, 
                            2, 0, 1, 2, 2)
           ), 
      row.names = c(NA, -73L), 
      class = c("tbl_df", "tbl", "data.frame")
      )

test <- glm(outcome ~ resp_score + coag_score + liver_score + 
              cardiovas_score + renal_score, data = myData)
summary(test)

我从您的命令中删除的唯一内容是Family = binomial并得到以下结果:

    Call:
glm(formula = outcome ~ resp_score + coag_score + liver_score + 
    cardiovas_score + renal_score, data = myData)

Deviance Residuals: 
     Min        1Q    Median        3Q       Max  
-0.88541  -0.16677   0.09191   0.11459   0.68038  

Coefficients:
                Estimate Std. Error t value Pr(>|t|)    
(Intercept)      0.93077    0.13547   6.871 4.17e-07 ***
resp_score      -0.02268    0.06703  -0.338   0.7381    
coag_score      -0.27004    0.12882  -2.096   0.0468 *  
liver_score      0.47799    0.42628   1.121   0.2733    
cardiovas_score -0.11254    0.05819  -1.934   0.0650 .  
renal_score     -0.20551    0.10250  -2.005   0.0564 .  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for gaussian family taken to be 0.1415673)

    Null deviance: 6.9667  on 29  degrees of freedom
Residual deviance: 3.3976  on 24  degrees of freedom
  (43 observations deleted due to missingness)
AIC: 33.793

Number of Fisher Scoring iterations: 2

所以我没有在变量中得到任何因素。 我认为您的数据集以某种方式将变量存储为因素。 我不知道它是否会解决您的问题,但只是想分享我对这个数据集的经验。 如果你喜欢,你可以按照我的方式尝试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM