我有一个包含 3 个 csv 文件的文件夹:
a.csv
b.csv
c.csv
要读取此文件夹中的所有 csv 并创建数据框,我目前正在执行以下操作:
df1 = pd.read_csv('a.csv')
df2 = pd.read_csv('b.csv')
df3 = pd.read_csv('c.csv')
有没有办法自动命名数据帧(df1、df2 和 df3)并读取该文件夹中的所有 csv 文件。假设我有 10 个 csv 文件,我不想在 pandas 中手动编写 10 个读取语句。
例如,我不想写这个:
df1 = pd.read_csv('a.csv')
......
......
......
df10 = pd.read_csv('j.csv')
谢谢!
最佳答案
如果您愿意访问数据帧列表而不是显式声明 df1...dfn,则可以很容易地做到这一点:
root= "YOUR FOLDER"
csvs= [] #container for the various csvs contained in the directory
dfs = [] #container for temporary dataframes
# collect csv filenames and paths
for dirpath, dirnames, filenames in os.walk(root):
for file in filenames:
csvs.append(dirpath + '\\' + file)
# store each dataframe in the list
for f in csvs:
dfs.append(pd.read_csv(f))
然后像 dfs[0] ... dfs[n]
关于python - 通过读取 csv 文件列表在 pandas 中动态创建数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44598377/