У меня есть фрейм данных, похожий на следующий формат:
Doc Category val
A aa 1
B ab 6
C ab 3
D cc 6.....
Я использую следующий код для определения всех комбинаций сумм val, а затем извлекаю строки, которые составляют целевую сумму, которую я уже определил.
#all combinations
res <- Map(combn, list(val), seq_along(val), simplify = FALSE)
x=unlist(res, recursive = FALSE)
z=lapply(x, function(x) sum(x))
Моя проблема заключается в определении наилучшего способа сохранения символьных столбцов во фрейме данных, поскольку приведенный выше код дает только числовые значения. То, как я сейчас это делаю, - это отображение, основанное на val, которое обычно работает нормально, однако я могу столкнуться с проблемами при наличии дублированных значений.
Например, если моя целевая сумма равна 7, я в конечном итоге хочу вывод, который выглядит следующим образом (есть другие способы получить это значение, но пока просто работает первый экземпляр):
Doc Category val
A aa 1
B ab 6
Есть ли лучший способ сопоставления с нечисловыми столбцами для достижения этого результата?