Распакуйте несколько файлов, содержащих одно и то же имя, используя R - PullRequest
0 голосов
/ 11 октября 2018

У меня есть 105 заархивированных файлов в папке.Все они содержат один CSV-файл, каждый из которых имеет одно и то же имя, то есть 'EapTransactions_1'

. В настоящее время я использую следующий код в R для извлечения их всех в новую папку:

library(plyr)    
outDir<-"C:/Users/dhritul.gupta/Migration Files/Trial1/extract"
zipF=list.files(path = "C:/Users/dhritul.gupta/Migration Files/Trial1", pattern = "*.zip", full.names = TRUE)
ldply(.data = zipF, .fun = unzip, exdir = outDir)

проблема с этим подходом состоит в том, что, поскольку все имена файлов одинаковы, каждое из них перезаписывается и сохраняется только последнее.

В любом случае можно сохранить каждое из них, переименовав его или добавив префикс /суффикс к именам файлов при извлечении?

1 Ответ

0 голосов
/ 11 октября 2018

Вы можете попробовать использовать file.rename, чтобы добавить уникальный номер в конец каждого файла, прежде чем совершать вызов, который использует unzip:

zipF <- list.files(path = "C:/Users/dhritul.gupta/Migration Files/Trial1",
    pattern = "*.zip", full.names = TRUE)
file.rename(zipF, paste0("EapTransactions_", 1:105))
ldply(.data=zipF, .fun=unzip, exdir=outDir)
...