gpt4 book ai didi

python - 使用 Pandas 将多个 csv 文件读入单独的数据帧

转载 作者:行者123 更新时间:2023-12-04 12:00:59 31 4
gpt4 key购买 nike

我喜欢将特定文件夹中的两个 csv 文件读取到两个单独的数据帧中。

这两个文件名是:23314621_MACI_NAV.CSV 和 23314623_MACI_Holding.CSV

文件名的第二部分是固定的 MACI_NAV.CSV 和 MACI_Holding.CSV,但是文件名的第一部分是数字每天都在变化。

我喜欢通过尝试将它们读入两个不同的数据帧:

import pandas as pd
import glob

msci_folder = 'N:/Operation/Daily CDS E_Report/CDS/MACI/'
mscifile = glob.glob(msci_folder + "\*.csv")

for file in mscifile:
df_nav=pd.read_csv(file)
df_holding=pd.read_csv(file)

似乎两行都在读取同一个文件,如何让它们读取不同的文件(第二个文件)?

最佳答案

如果要创建 DataFrame 列表:

dfs = []
for file in mscifile:
df = pd.read_csv(file)
dfs.append(df)

或者使用列表理解:
dfs = [pd.read_csv(file) for file in mscifile]

print (dfs[0])
print (dfs[1])

另一种解决方案是创建 dictionary of DataFrames使用 _ 之后的最后一个子字符串的键在文件名中:
from os.path import splitext, basename

dfs = {splitext(basename(fp))[0].split('_')[-1] : pd.read_csv(fp) for fp in mscifile}
print (dfs)

print (dfs['NAV'])
print (dfs['Holding'])

关于python - 使用 Pandas 将多个 csv 文件读入单独的数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52074325/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com