问题描述
我需要从一个目录中读取多个 csv 文件并将每个数据保存在单独的数据框中。 文件名在字符向量中:
lcl_forecast_data_files <- dir(lcl_forecast_data_path,pattern=glob2rx("*.csv"),full.names=TRUE)
例如:“fruc2021.csv”、“gem2020.csv”、“strb2021.csv”。
到目前为止,我正在逐步阅读文件:
fruc2021 <- read_csv2("fruc2021.csv")
gem2020 <- read_csv2("gem2020.csv")
strb2010 <- read_csv2("strb2021.csv")
现在我已经对 map 函数进行了一些实验,但我还没有弄清楚如何从文件名中自动生成数据框的名称。
第一个简单的尝试是:
lcl_forecast_data <- lcl_forecast_data_files %>%
map(
function(x) {
str_replace(basename(x),".csv","") <- read_csv2(x)
}
)
但这不起作用:-(
甚至可以为这样的数据帧生成名称吗? 或者还有其他更简单的可能性吗?
您好 贝恩
用www.DeepL.com/Translator翻译(免费版)
解决方法
如果您不想像@Onyambu 建议的那样使用列表和 lapply,您可以使用assign() 来生成数据帧。
vjust