I sh для создания пользовательской функции в R, которая объединяет несколько таблиц, использующих регулярные выражения для поиска этих таблиц. В моей ситуации я хочу объединить все таблицы в моей среде, начиная с «m _».
Это дает именно то, что я хочу:
Reduce(function(...) merge(..., all = TRUE), mget(apropos("^m_")))
Но это не работает, когда я попытка преобразовать этот код в пользовательскую функцию:
multi.merge <- function(...){
x <- Reduce(function(...) merge(..., all = TRUE), mget(apropos(...))
return(x)
}
dt <- multi.merge("^m_")
Ошибка: значение для 'm_table1' не найдено
Я пробовал использовать различные функции, такие как get0
или syms
, и другой синтаксис просто заканчивается одной и той же ошибкой. Я подозреваю, что это просто связано с проблемой в структуре функции, которую я не понимаю.
Есть ли способ заставить эту работу работать?