Мы можем получить индекс строки / столбца с arr.ind
в which
на логическом matrix
и получить соответствующие имена строк и имен столбцов
i1 <- which(dat == "*", arr.ind = TRUE)
data.frame(School = colnames(dat)[i1[,2]], Agency = row.names(dat)[i1[,1]])
data
dat <- structure(list(X = c("*", "", "*", "", "", "*", "*", "", "*"),
Y = c("", "", "", "", "", "", "", "", "*"), Z = c("", "",
"", "", "", "", "", "*", "")), row.names = c("A", "B", "C",
"D", "E", "F", "G", "H", "I"), class = "data.frame")