将多个CSV文件导入具有相同名称的变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将多个CSV文件导入具有相同名称的变量相关的知识,希望对你有一定的参考价值。
一个目录中有多达1440个文件可供Python读取。文件名的格式为
HMM_1_1_.csv
HMM_1_2_.csv
HMM_1_3_.csv
HMM_1_4_.csv
...
而对于HMM_i_j_.csv
,i
从1到144,j
从1到10。
如何将它们中的每一个导入名为HMM_i_j
的变量,类似于其原始名称?
例如,HMM_140_8_.csv
应该作为变量HMM_140_8
导入。
答案
您可以使用pandas和字典来完成此操作。这个脚本可能会做你想要的。
要在python环境中访问特定的csv文件,只需使用ie csv [HMM_5_7]。
import pandas as pd
csv = {}
for i in range(1, 145):
for j in range(1, 11):
s = 'HMM_{}_{}'.format(i,j)
csv[s] = pd.read_csv(s+'.csv')
或者:(更短)
d = {}
for i in range(1440):
s = 'HMM_{}_{}'.format(i//10+1,i%10+1)
d[s] = pd.read_csv(s+'.csv')
或者不太可读的单行:
d = {'HMM_{}_{}'.format(i//10+1,i%10+1):
pd.read_csv('HMM_{}_{}.csv'.format(i//10+1,i%10+1)) for i in range(1440)}
另一答案
您可以创建一个字典,其中键的名称减去'_.csv',而值是文件的内容,而不是将它们放在具有此名称的变量中。
以下是步骤,我让您弄清楚如何完成每一步:
- 创建一个空字典
- 循环i从1到144,j从1到10循环
- 如果存在相应的文件,请将其读取并将其内容放在相应键的字典中
以上是关于将多个CSV文件导入具有相同名称的变量的主要内容,如果未能解决你的问题,请参考以下文章
将来自不同文件夹的多个 csv 文件(相似名称)合并到一个 csv 中并逐行绑定它们 [关闭]