Ich habe eine Liste von csv-Dateien mit purrr :: map abgerufen und eine große Liste bekommen.Erhalte den Namen eines Listeneintrags, der mit purrr :: map erstellt wurde
csv_files <- list.files(path = data_path, pattern = '\\.csv$', full.names = TRUE)
all_csv <- purrr::map(csv_files, readr::read_csv2)
names(all_csv) <- gsub(data_path, "", csv_files)
return all_csv
EDITED wie durch @Spacedman vorgeschlagen
I weiter jedes Tibble/Datenrahmen separat innerhalb der process_csv_data Funktion verarbeiten müssen.
purrr::map(all_csv, process_csv_data)
Wie wird der Name eines einzelnen Elements in der großen Liste ohne for-Schleife abgerufen?
wie 'Namen (all_csv) [42]' zum Beispiel? – Spacedman
Verwenden Sie 'basename (csv_files)', um den Dateinamen als Teil des Pfades zu erhalten. 'gsub' schlägt fehl, wenn' data_path' ''. "' ist, was es war, als ich das versuchte. – Spacedman
@Spacedman Ist das der Grund für den Downvote? Wie gesagt, ich vermeide eine for-Schleife und daher sollte ich keinen Index haben, um den Klammeroperator [. – Yann