У меня возникла следующая проблема, и пока я не нашел подходящего ответа.Запуск через каталоги и файлы и сохранение файлов в новых директориях с разными именами
I've получили грузы наборов данных, хранящихся во вложенных папках в следующем каталоге:
C:/Users/Desktop/Data Generation
в подпапки follwing схеме:
/Model 1/Model_1_250skew1mar1
с возможными изменениями в модели от 1 до 3; а также 250 до 750; перекос от 1 до 3; и 1 марта до 3.
Например: /Model 3/Model_3_750skew2mar2 or /Model 2/Model_2_250skew3mar1
В этих подпапок я получил свои наборы данных: M1_1
через M1_1000
или для модели 2 M2_1
через M2_1000
Теперь я хочу, чтобы мои наборы данных: M1_1
через M1_1000
и заменить отсутствующие значения и сохранить те данные наборы в новом каталоге в соответствии с которой я получил их:
C:/Users/Desktop/Data Generation/ NA /Model 1/Model_1_250skew1mar1
Я могу сделать это для одного из моих подкаталогов с follwing кодом:
files_M_neu <- list.files(path="C:/Users/Desktop/Data Generation/Model 1/Model_1_250skew1mar1",
pattern="M1_*[^list].dat", recursive=TRUE, full.names=TRUE)
dir.create("C:/Users/Desktop/Data Generation/NA")
dir.create("C:/Users/Desktop/Data Generation/NA/Model 1")
dir.create("C:/Users/Desktop/Data Generation/NA/Model 1/Model_1_250skew1mar1")
for(i in 1:length(files_M_neu)){
data <- read.table(files_M_neu[i], header=TRUE)
fix_missing <- function(x) {
x[x == 999] <- NA
x
}
data <- fix_missing(data)
write.table(data, paste("C:/Users/Desktop/Data Generation/NA/Model 1/Model_1_250skew1mar1/data[",i,"].dat"),
sep="\t", row.names = FALSE, col.names = FALSE)
rm(data)
}
Как я смог автоматизировать этот процесс, так что я не приведенный выше код 54 раз? Я бы хотел, чтобы был чистый способ: получить мои файлы, заменить пропуски и сохранить файлы в соответствии с каталогами, откуда я их получил ...
Как вы могли догадаться, я новичок в R, но я пробовал разные вещи, и теперь я не вижу способ получить ближе к решению ...
Спасибо заранее
спасибо! Это очень помогает мне! – AndySOWI