I think its like this
library(tidyverse)
Intercept <- -2.68
car_type <- c(
saloon = 0,
suv = 0.07,
bus = 0.15
)
use <- c(
private = 0,
commercial = -0.09
)
(result <- expand_grid(
Intercept, enframe(car_type, name = "cartype", value = "ctval"),
enframe(use, name = "use", value = "uval")
) %>% mutate(
description = paste(cartype, use),
logodds = Intercept + ctval + uval,
odds = exp(logodds),
probability = odds / (odds + 1),
prob_percent = paste0(round(probability * 100, 2), "%")
))
result %>% select(description,prob_percent)
# # A tibble: 6 x 2
# description prob_percent
# <chr> <chr>
# 1 saloon private 6.42%
# 2 saloon commercial 5.9%
# 3 suv private 6.85%
# 4 suv commercial 6.3%
# 5 bus private 7.38%
# 6 bus commercial 6.79%