У меня есть список XML файлов, которые я объединяю вместе, но я пытаюсь понять, как добавить столбец "id"
в каждый фрейм данных на основе имени файла.
# BUILD DATAFRAME LIST
list_filenames <- list.files(pattern = ".xml$")
df_list <- lapply(list_filenames, function(f) {
list_ids <- as.list(list_filenames)
doc <- xmlParse(f, useInternalNodes = TRUE)
doc2 <- xmlToDataFrame(doc, nodes = getNodeSet(doc, "//Event"))
mapply(cbind, doc2, "id" = list_ids, SIMPLIFY = F) # Code that kind of works
})
final_df <- do.call(rbind, df_list)
Я надеюсь получить что-то вроде этого:
ex_df <- cbind(x = c(3, 2, 10, 12),
y = c("a", "b", "c", "d"),
id = c("file_name_1", "file_name_1", "file_name_2", "file_name_2")) %>%
as.data.frame()
> ex_df
x y id
1 3 a file_name_1
2 2 b file_name_1
3 10 c file_name_2
4 12 d file_name_2