Pandas如何将批量CSV文件以无后缀文件名为key存入字典
实现方案
你可以通过遍历匹配到的文件路径,逐次提取文件名并读取数据存入字典即可,完整实现代码如下:
import pandas as pd import glob import os # 初始化存储DataFrame的字典 df_dict = {} csv_path = '/Users/redman/stock-data/*.csv' for file_path in glob.glob(csv_path): # 提取不带后缀的文件名作为字典key file_name = os.path.splitext(os.path.basename(file_path))[0] # 读取csv存入字典 df_dict[file_name] = pd.read_csv(file_path)
关键逻辑说明
os.path.basename(file_path):从完整路径中提取带后缀的文件名,比如AA.csvos.path.splitext():将文件名拆分为(文件名主体, 后缀)的元组,取下标0的元素即可得到去掉.csv的文件名- 最终你可以通过
df_dict['AA']的方式直接调取对应AA.csv的DataFrame数据
如果你偏好更简洁的写法,也可以用字典推导式实现:
import pandas as pd import glob import os csv_path = '/Users/redman/stock-data/*.csv' df_dict = {os.path.splitext(os.path.basename(f))[0]: pd.read_csv(f) for f in glob.glob(csv_path)}
内容的提问来源于stack exchange,提问作者Redman
相关产品推荐
相关产品推荐

