Создание функции цикла с помощью read_csv - RStudio - PullRequest
0 голосов
/ 01 июня 2018

У меня есть код в RStudio, который импортирует CSV на основе критериев с помощью функции paste.

Name <- "Sam"
Location <- "Barnsley"
Code <- "A"

Test2 <- read_csv(paste("C:/Users/....,Opposition , " (",Code,")/Vs ",Location, " (",Code,") Export for ",Name,".csv",sep = ""),skip = 8)

Обычно я следую этому коду импорта несколькими строками кода для расчетов.Для аргументов: Run Code Series

Я хотел бы воссоздать этот код, чтобы создать список имен, и чтобы код проходил через 1: 1, а затем запускал код.

Desired:

Name <- c("Sam","David","Paul","John")

Затем можно будет запустить код импорта и иметь его Run Code Series после каждого импорта перед импортом следующего имени.

1 Ответ

0 голосов
/ 02 июня 2018

Я полагаю из вашего вопроса, что вы хотите закончить отдельным кадром данных для каждого имени.Если это так, вы можете сделать это следующим образом:

Names <- c("Sam","David","Paul","John")
Location <- "Barnsley"
Code <- "A"
for(i in Names){
    Test2 <- read_csv(paste("C:/Users/....,Opposition" , " (", Code,")/Vs ", Location, " (",Code,") Export for ", i, ".csv", sep = ""), skip = 8)
    Run Code Series
    assign(paste("df_for_", i, sep = ""), Test2)
}

Это будет проходить через ваш список имен и внутри цикла, откройте файл как Test2.Вы выполняете свои вычисления в Test2, а затем назначаете его на фрейм данных для определенного имени в списке, используя вставку.Кроме того, ваши кавычки в строке read_csv не совпадают, поэтому их необходимо исправить.

...