Объедините файлы .txt и добавьте часть имени файла в качестве нового значения столбца. - PullRequest
0 голосов
/ 06 апреля 2020

Я объединяю несколько файлов, которые по сути являются файлами .txt, хотя и называются .sta. Я использовал следующий код, чтобы объединить их после проблем с базой R apply и dplyr lapply:

library(plyr)
myfiles <-  list.files(path="LDI files", pattern ="*.sta", full.names = TRUE) 
dat_tab <- ldply(myfiles, read.table, header= TRUE, sep = "\t",  skip = 5) 

Я хочу добавить столбец, значения которого являются частью имена файлов. Примеры имен файлов: "GFREX28-00-1" и " GFREX1534-00-1" . Я хочу сохранить цифры сразу после GFREX, до первого da sh -.

1 Ответ

0 голосов
/ 06 апреля 2020

Я не уверен, правильно ли я понял ваш вопрос. Я даю предварительный ответ. Идея состоит в том, чтобы назначить новый столбец для data.frame перед его возвратом.

filepaths <-  list.files(path="LDI files", pattern ="*.sta", 
                          full.names = TRUE)
filesnames <-  list.files(path="LDI files", pattern ="*.sta", 
                          full.names = FALSE) 

dat_tab <- lapply(1:length(filepaths), function(i) {
    df <-  read.table(filepaths[i] header= TRUE, sep = "\t",  skip = 5)
             df$fn <- gsub("GFREX","",filesnames[i])
    df
}) 
...