gpt4 book ai didi

python - 遍历目录中的文件,在 Pandas 中添加日期列

转载 作者:太空宇宙 更新时间:2023-11-04 03:32:47 28 4
gpt4 key购买 nike

我所有的文件都有以下标题,它们可以追溯到几年前。我希望能够读取每个文件,然后将文件名中的日期添加为一列。

截至 2015-04-01.csv 的文件类型

path = 'C:\\Users\\'  
filelist = os.listdir(path) #All of my .csv files I am working with
file_count = len(filelist) #I thought I could do a for loop and use this as a the range
df = Series(filelist) #I just added this because I couldn't get the date from a list
date_name = df.str[15:-4] #This gives me the date

所以我尝试过的是:

for file in filelist:
df = pd.read_csv(file)

现在我想从文件名中获取 date_name 并添加一个名为 date 的列。每个文件都完全相同,但我想跟踪随时间的变化,唯一的日期就在文件名上。

然后我会附加它。

path = 'C:\\Users\\'
filelist = glob.glob(path + "/*.csv")
frame = pd.DataFrame()
list = []
for file in filelist:
df = pd.read_csv(file)
list_.append(df)
frame = pd.concat(list)

如何将日期名称添加到文件/数据框? 1)读取文件,2)根据文件名添加日期列,3)读取下一个文件,4)添加日期列,5)追加,6)对路径中的所有文件重复

编辑---我想我有工作要做——这是最好的方法吗?有人可以解释一下 list = [] 正在做什么吗?

path = 'C:\\Users\\'
filelist = os.listdir(path)
list = []
frame = pd.DataFrame()
for file in filelist:
df2 = pd.read_csv(path+file)
date_name = file[15:-4]
df2['Date'] = date_name
list.append(df2)
frame = pd.concat(list)

最佳答案

这似乎是一种合理的方法。 pd.concat 获取 pandas 对象列表并将它们连接起来。 append 在循环文件时将每个 frame 添加到列表中。不过,我看到有两件事需要改变。

  1. 您不需要frame = pd.DataFrame()。当您将 dataframes 附加到列表时,它没有做任何事情。
  2. 我会将变量 list 的名称更改为其他名称。也许 frames 因为它是对内容的描述,并不意味着什么。

关于python - 遍历目录中的文件,在 Pandas 中添加日期列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30405420/

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