首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在R中使用循环导入.cvs文件?

如何在R中使用循环导入.cvs文件?
EN

Stack Overflow用户
提问于 2021-09-27 05:19:51
回答 2查看 87关注 0票数 0

我有一系列名为Natalidad[i]的.cvs文件,其中[i]是1996到2020年的数据年份。我想让I循环来加载它们中的每一个。我已经尝试了下一段代码,但它正在工作。

代码语言:javascript
运行
复制
for (i in 1996:2020) { 
  nacimientos[i] <- read.csv("Natalidad [i]_p.csv", header = TRUE, sep = ";") 
}

我也尝试过不使用[],而用()代替。我的问题可能很基本。我不熟悉R中的循环,所以我可能遗漏了一些重要的东西。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-09-30 10:16:27

如果在R中执行此操作,则必须首先粘贴文件名的字符串。R字符串中不能有变量。例如,paste0("first part", i, "second part"),其中i是变量。

试一试

代码语言:javascript
运行
复制
for (i in 1996:2020) { 
  nacimientos[i] <- read.csv(paste0("Natalidad ", [i], "_p.csv"), header = TRUE, sep = ";") 
}
票数 1
EN

Stack Overflow用户

发布于 2021-09-27 08:35:52

由于您最初将问题标记为Python,因此可以按如下方式完成:

代码语言:javascript
运行
复制
import pandas as pd

nacimientos = [pd.read_csv(f"Natalidad [{year}]_p.csv", sep=";") for year in range(1996, 2021)]

这将创建一个数据帧列表,第一个数据帧是1996年的数据帧。它使用Python的“列表理解”来构建列表。

这相当于:

代码语言:javascript
运行
复制
nacimientos = []

for year in range(1996, 2021):
    df = pd.read_csv(f"Natalidad [{year}]_p.csv", sep=";")
    nacimientos.append(df)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69341541

复制
相关文章

相似问题

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