微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在R中使用read_csv导入多个csv文件

如何解决在R中使用read_csv导入多个csv文件

我有一个带有多个csv文件名称的向量。

library(readr)
data<-c("categories.csv","customers.csv","employees.csv","employee_territories.csv","order_details.csv","orders.csv","products.csv","regions.csv","shippers.csv","suppliers.csv","territories.csv")

,我想在工作区中使用for循环来加载所有这些文件

我的第一次尝试是

i<-1
for (i in data) {
  read_csv(data("i"))
}

也许有人可以帮助我。

解决方法

我们可以使用map

library(purrr)
library(readr)
out_list <- map(data,read_csv)
names(out_list) <- sub("\\.csv","",data)
list2env(out_list,.GlobalEnv) # not recommended

或者使用for循环,创建一个NULL list来存储读取数据的输出,然后循环遍历“数据”,读取它们并将其分配给输出列表元素>

out_list <- vector('list',length(data))
names(out_list) <- data
for(file in data) out_list[[file]] <- read_csv(file)

如果我们要创建多个新对象(不推荐)

for(file in data) {
    assign(sub("\\.csv",file),read_csv(file))
 }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。