![](/img/trans.png)
[英]import a folder with multiple .csv files and manipulate all dataframe at once in R
[英]Import big CSV files at once in R
我在一個文件夾中有70個具有相同列的csv文件,每個文件均為0.5 GB。 我想將它們導入R中的單個數據框中。
通常我按如下方式正確導入每個:
df <- read_delim("file.csv",
"|", escape_double = FALSE, col_types = cols(pc_no = col_character(),
id_key = col_character()), trim_ws = TRUE)
要導入所有這些代碼,應進行如下編碼和錯誤,如下所示:缺少參數“ delim”,沒有默認值
tbl <-
list.files(pattern = "*.csv") %>%
map_df(~read_delim("|", escape_double = FALSE, col_types = cols(pc_no = col_character(), id_key = col_character()), trim_ws = TRUE))
使用read_csv時,已導入但僅顯示一列,其中包含所有列和值。
tbl <-
list.files(pattern = "*.csv") %>%
map_df(~read_csv(., col_types = cols(.default = "c")))
在第二段代碼中,您缺少.
,因此read_delim
將您的參數解釋為read_delim(file="|", delim=<nothing provided>, ...)
。 嘗試:
tbl <- list.files(pattern = "*.csv") %>%
map_df(~ read_delim(., delim = "|", escape_double = FALSE,
col_types = cols(pc_no = col_character(), id_key = col_character()),
trim_ws = TRUE))
我在這里明確標識了delim=
,但這不是嚴格必需的。 如果您第一次嘗試過這樣做,您會看到
readr::read_delim(delim = "|", escape_double = FALSE,
col_types = cols(pc_no = col_character(), id_key = col_character()),
trim_ws = TRUE)
# Error in read_delimited(file, tokenizer, col_names = col_names, col_types = col_types, :
# argument "file" is missing, with no default
這更能說明實際問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.