data1 <- tibble::tribble(
~Patient, ~Drug,
"JohnX", "Alpha",
"JohnX", "Gama",
"JohnX", "Pana",
"JohnX", "Sega",
"MikeX", "Sega",
"MikeX", "Zole",
"MikeX", "Dol") %>%
# add 1 to all the data points
mutate(Value = 1)
# convert to "wide" format, with Drugs as column names
data2 = pivot_wider(data1,
names_from = Drug,
values_from = Value,
values_fill = 0)
data2
# A tibble: 2 x 7
Patient Alpha Gama Pana Sega Zole Dol
<chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 JohnX 1 1 1 1 0 0
2 MikeX 0 0 0 1 1 1