首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >csv文件的自动输入和命名

csv文件的自动输入和命名
EN

Stack Overflow用户
提问于 2022-09-21 20:33:14
回答 1查看 12关注 0票数 1

我试图从EPA网站导入许多csv文件。这些csv文件的名称是合理的/一致的。对于如何使用循环来自动输入csv文件并将它们命名为R中的数据文件,有什么建议吗?

现在,我正在手动地在每一行代码中交换月份名称,如下所示:

代码语言:javascript
复制
library(tidyverse)

#Download 2013 data

jan_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_jan2013.csv")%>%
  add_column("month"="jan","year"=2013)
feb_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_feb2013.csv")%>%
  add_column("month"="feb","year"=2013)
mar_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_mar2013.csv")%>%
  add_column("month"="mar","year"=2013)
apr_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_apr2013.csv")%>%
  add_column("month"="apr","year"=2013)
may_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_may2013.csv")%>%
  add_column("month"="may","year"=2013)
jun_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_june2013.csv")%>%
  add_column("month"="jun","year"=2013)
jul_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_july2013.csv")%>%
  add_column("month"="jul","year"=2013)
aug_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_aug2013.csv")%>%
  add_column("month"="aug","year"=2013)
sep_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_sept2013.csv")%>%
  add_column("month"="sep","year"=2013)
oct_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_oct2013.csv")%>%
  add_column("month"="oct","year"=2013)
nov_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_nov2013.csv")%>%
  add_column("month"="nov","year"=2013)
dec_13<-read.csv("https://www.epa.gov/sites/default/files/2017-10/rindata_dec2013.csv")%>%
  add_column("month"="dec","year"=2013)

我想设置一些东西,在这里导入所有12个月,适当地修改添加的列,并按月份对结果的df进行适当的命名。

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2022-09-21 21:00:37

使用月份向量和字符串连接读取所有csvs,然后设置它们的名称、帧、添加一个年份列和取消嵌套:

代码语言:javascript
复制
months <- c("jan", "feb", "mar", "apr", "may", "june", "july", "aug", "sept", "oct", "nov", "dec")

dfs <- lapply(months, function(x) read.csv(paste0("https://www.epa.gov/sites/default/files/2017-10/rindata_", x, "2013.csv"))) %>%
  setNames(months) %>%
  enframe(name = "month") %>%
  add_column(year = 2013) %>%
  unnest(value)

如果这有用的话请告诉我!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73806649

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档