This is a tidyverse based alternative that works by reshaping your data into a long format
library(tidyverse)
sample_data <- data.frame(
University1 = c(1, 0, 0, 0, 0),
University2 = c(0, 1, 0, 0, 0),
University3 = c(0, 0, 1, 0, 0),
University4 = c(0, 0, 0, 1, 0),
University5 = c(0, 0, 0, 0, 1)
)
sample_data %>%
pivot_longer(cols = starts_with("University"),
names_to = "University") %>%
filter(value == 1) %>%
select(University)
#> # A tibble: 5 x 1
#> University
#> <chr>
#> 1 University1
#> 2 University2
#> 3 University3
#> 4 University4
#> 5 University5