У меня много файлов csv, и мне нужно их прочитать и выполнить некоторые операции в переменных. Я использовал цикл «for», но он занимает слишком много времени. Здесь я искал множество ответов, и я знаю, что это будет намного эффективнее, но я не могу это реализовать. Может ли кто-нибудь помочь мне, пожалуйста? Пример из файла:изменение цикла для привязки к нескольким файлам
ID Estimate SE avar h2
683 6.17E-02 1.226 1.11 0.19
52 -1.77E-02 1.278 1.11 0.19
У меня есть почти 50 файлов в том же формате, но с разными названиями. Я хочу, чтобы прочитать все файлы, создать переменную с именем rel, которая равна: 1 - (SE^2)/avar. После этого я хочу подмножить данные на основе переменной rel и записать новые файлы. Что я пробовал:
myfiles <- list.files(pattern=".csv")
for (j in 1:length(myfiles)) {
this_file <- read.csv(myfiles[j], header = T)
for (i in this_file) {
for (k in 1:dim(this_file)){
this_file["rel"] = 1-((this_file["SE"]*this_file["SE"])/this_file["avar"])
this_file <- subset(this_file, this_file["rel"] >= 0.8*this_file["h2"])
write.csv(this_file, file=this_file)
}}}
Я знаю, что это довольно просто, но я не понимаю. Любая помощь будет очень высоко ценится. Спасибо. Paula.
Пожалуйста, объясните, что вы пытаетесь сделать после прочтения каждого файла csv. – Metrics
Спасибо @Metrics. Я сделал это. – PaulaF
Когда вы говорите, что у них разные имена, вы имеете в виду файлы или столбцы в каждом файле? –