我试图编写一个脚本,将目录中的所有.csv文件作为数据帧导入我的工作区。每个数据帧应命名为csv文件(减去扩展名:.csv)。
这是我到目前为止所做的,但很难理解如何为循环中的数据帧分配正确的名称。我发现过使用exec()
的帖子,但这似乎不是一个很好的解决方案。
path = "../3_Data/Benefits" # dir path
all_files = glob.glob(os.path.join(path, "*.csv")) #make list of paths
for file in all_files:
dfn = file.split('\\')[-1].split('.')[0] # create string for df name
dfn = pd.read_csv(file,skiprows=5) # This line should assign to the value stored in dfn
感谢任何帮助,谢谢。
答案 0 :(得分:6)
name
没有name
他们的索引可以有import glob
import os
path = "./data/"
all_files = glob.glob(os.path.join(path, "*.csv")) #make list of paths
for file in all_files:
# Getting the file name without extension
file_name = os.path.splitext(os.path.basename(file))[0]
# Reading the file content to create a DataFrame
dfn = pd.read_csv(file)
# Setting the file name (without extension) as the index name
dfn.index.name = file_name
# Example showing the Name in the print output
# FirstYear LastYear
# Name
# 0 1990 2007
# 1 2001 2001
# 2 2001 2008
。这是设置它的方法。
RAW_CONTACT_ID