Привет, я новичок в функциях l oop. Я хочу иметь возможность прочитать свои 30 файлов и собрать каждый из них. Затем продолжайте их использовать. На первом этапе я беру объединенный файл и затем разбиваю его на 30 файлов на основе кода таблички. Таким образом, каждая из разных пластин становится файлом, названным по своему номеру c пластины. Этот бит работает, и у меня получается 30 файлов пластин.
RickDADA2.split<- split.data.frame(RickDADA2, RickDADA2$platecode)
# Save
lapply(names(RickDADA2.split), function(x){
write_csv(files[[x]], path = paste(x, ".csv", sep = ""))
})
Затем я читаю все 30 файлов обратно в R (этот бит тоже работает) Каждый файл в виде 5 столбцов, и то, что мне нужно, чтобы уметь нужно вытащить 3 из этих 5 столбцов и затем распределить их в широком формате для каждого из 30 файлов:
files.name<-list.files(pattern='ASV.csv')
files.name.list<-list('vector', length(files.name))
files.name].list <- lapply(files.name, function(x) read_csv(x))
Затем мне нужно иметь возможность обрабатывать файлы следующим образом, и я не могу понять, как написать l oop, чтобы заставить его работать ... Когда я пытаюсь выполнить эти два шага в коде, используя lapply, они выдают следующую ошибку:
files.name %>% unite('code2', c(platecode, code), remove=T, sep='_')
files.name %>% spread(key='code2', value='abund', fill=0)
Большое спасибо за вашу помощь с l oop functions