Итак, у меня есть цикл for, в котором я перебираю циклы данных чисел. Мое требование состоит в том, чтобы извлечь все те пары (rowid, columnid) значений в кадре данных, которые больше 1.
Я пытался использовать rbind, но получаю ошибку о несоответствующих измерениях. И когда я дважды использую rbind для строки и столбца, кажется, что он вставляет / добавляет один и тот же rowid через througout. В какой-то момент он перезаписывается, но я не могу понять, где.
for loop through nrow of matt {
rowsneeded <- which(matt[i, ] >1)
if (length(rowsneeded ) > 0) {
resultsdf<-rbind(resultsdf, c(i, rownames(matt[i, findrows, drop = FALSE])))
resultsdf<-rbind(resultsdf, c(i, colnames(matt[i, findrows, drop = FALSE])))
}
}
Что мне нужно:
cat1 cat2 cat3
cat1 0 0 2
cat2 0 0 3
cat3 2 3 0
В конце цикла for мне нужен список илиобъект dataframe в следующем формате: условие: все значения больше 1 Итак,
(cat1, cat3)
(cat2, cat3)
(cat3, cat2)
Позже я могу удалить дубликаты из результатов, но первым шагом будет получение результатов моегоцикл for в обрабатываемый формат.