我想将每个文件映射到其唯一的数据框。类似的东西:
df1 = pd.read_csv(file1, ...)
df2 = pd.read_csv(file2, ...)
...
dfn = pd.read_csv(filen, ...)
为此我做了以下事情:
files = glob.glob("*.csv")
for i in range(len(files)):
df_i = pd.read_csv(files[i],...)
我没有错误。但是,我无法访问任何数据帧。当我输入df_1时,我得到"未定义"。发生了什么事?
答案 0 :(得分:1)
您正在做的是一遍又一遍地将ds_i分配给新的DataFrame。
可能的解决方案是创建DataFrames列表:
for i in range(len(files)):
dfList = list(pd.read_csv(files[i],...))
更好的解决方案是使用列表理解:
dfList = [pd.read_csv(files[i]) for i in range(len(files))]
更好的解决方案是放弃范围:
dfList = [pd.read_csv(file) for file in files]