首页 > 解决方案 > 利用glm概率在R中制作表格

问题描述

我正在使用 Mtcars 中的数据,需要生成一个 3 列的表,其中第 1 行中的车辆名称、第 2 列中的自动变速箱概率和第 3 列中的 AM 值(自动、手动)。我已将 am、carb、gear、vs 和 cyl 转化为因子。

下表效果很好,但它给了我 0,1 的 AM 值

table(rownames(mtcars),mtcars$am)

我试图使用 glm 添加第三列

Predicting_am <-glm(am ~ carb+mpg+disp,
                    data = mtcars, 
                    family = "binomial")
Probofam <- predict(Predicting_am,
                    mtcars,type = 'response')
table(rownames(mtcars),mtcars$am,Probofam)

这给了我一个丑陋的分散情况,它需要三列显示汽车的名称、概率和 am 的值(自动或手动)

请帮忙。

标签: r

解决方案


我认为您应该构建一个数据框。

result <- data.frame(Name = rownames(mtcars), 
                     am = mtcars$am, 
                     Probofam, row.names = NULL)
result

#                  Name am    Probofam
#1            Mazda RX4  1 0.804687472
#2        Mazda RX4 Wag  1 0.804687472
#3           Datsun 710  1 0.274468184
#4       Hornet 4 Drive  0 0.108778583
#5    Hornet Sportabout  0 0.064571610
#6              Valiant  0 0.020669417
#7           Duster 360  0 0.058593597
#8            Merc 240D  0 0.730144342
#9             Merc 230  0 0.530129116
#10            Merc 280  0 0.598268065
#...
#...

推荐阅读