我想读取路径中的所有CSV文件,并将每个CSV文件分配给我的python代码中的其他变量名称。
例如,
dshfd9438dks.csv
ansjewi38Ekd.csv
将变成:
df1 and df2
我现在拥有的代码是:
for f in glob.iglob('*.csv'):
df = pd.read_csv(f, low_memory=False)
我将如何操作它以将数字添加到df变量?
答案 0 :(得分:3)
显式命名链接变量是不明智的做法。在这种情况下,您可以将字典与enumerate
一起使用:
dfs = {}
for idx, f in enumerate(glob.iglob('*.csv'), 1):
dfs[idx] = pd.read_csv(f, low_memory=False)
如果您愿意,可以将其转换为字典理解:
files = enumerate(glob.iglob('*.csv'), 1)
dfs = {idx: pd.read_csv(f, low_memory=False) for idx, f in files}
然后通过dfs[1]
,dfs[2]
等访问数据框。
答案 1 :(得分:1)
为什么不将它们放入字典中?
dfs = dict(("df{}".format(i), pd.read_csv(f)) for i,f in enumerate(glob.iglob('*.csv')))