#r
#r
Вопрос:
Я пытаюсь автоматизировать некоторые процессы для оповещений по электронной почте, поэтому мне приходится вызывать разные фреймы данных с разными группами электронных писем и именами. Я не могу вызвать фрейм данных с помощью paste0
, у меня закончились идеи, буду признателен за любую обратную связь.
Я ответил на множество вопросов, но ни один из них не отвечает на то, что я хочу сделать.
В следующем коде i
является предыдущим значением для других автоматизированных процессов.
for (u in 1:i) {
for (g in 1:length(Milestone_data$Milestone_Column_Name)) {
for (a in 1:length(Merged_table1$`Review ID`)) {
if (!is.na(paste0("Merged_table",u)[,c(Milestone_data$Milestone_Column_Name[g])][a])){
print(paste0(g, a))
if (paste0("Merged_table",u)[, Milestone_data$Milestone_Column_Name[g]][a] <= (Sys.Date() weeks(2)) amp; paste0("Merged_table",u)[, Milestone_data$Milestone_Column_Name[g]][a] >= (Sys.Date())){
newrow <- (c(paste0("Merged_table",u)[["EMAIL"]][a], paste0("Merged_table",u)[a,c(1)], paste0("Merged_table",u)[["Review Category"]][a], Milestone_data$Milestone_Column_Name[a], as.Date(paste0("Merged_table",u)[, Milestone_data$Milestone_Column_Name[g]][a],"%Y-%m-%d") ))
paste0("x",u) <-InsertRow(paste0("x",u), NewRow = newrow)
}
}
}
}
}
Ошибка в paste0(«Merged_table», u)[,
Milestone_data$Milestone_Column_Name[g]] : неверное количество
размеры.
Это ошибка, которую я получаю — оптимальным результатом было бы иметь три разных фрейма данных из трех исходных, которые соответствуют условиям, которые я установил в формуле.
Приветствуется любая помощь. Спасибо
Ответ №1:
вам нужна get
функция. Рассмотрим этот простой пример:
x_1 <- 11
paste0("x_", 1) * 2
Ошибка в paste0(«x_», 1) * 2: нечисловой аргумент двоичного оператора
get(paste0("x_", 1)) * 2
[1] 22
Комментарии:
1. Большое вам спасибо, вы спасли меня! Теперь мой код работает.