gpt4 book ai didi

python - 如何 append 多个 CSV 文件并在 Python 中添加一个指示文件名的 append 列?

转载 作者:太空宇宙 更新时间:2023-11-04 09:34:50 26 4
gpt4 key购买 nike

我在一个文件夹中有 20 多个 CSV 文件。所有文件都具有相同的结构,它们只是代表不同的日期。

例子:

Day01.csv

Day02.csv

Day03.csv

Day04.csv(等等...)

文件仅包含两个数字列:x 和 y。我想将所有这些 csv 文件 append 到一个大文件中,并为文件名(天)添加一列。我探索了类似的示例以生成以下代码,但此代码将每个 y 添加到单独的列(Y1、Y2、Y3、Y4 等)。我只想将这个 append 文件作为三列:x、y、文件名。如何修改代码以进行正确的追加?

我试过这个例子中的代码:Read multiple csv files and Add filename as new column in pandas

import pandas as pd
import os
os.chdir('C:....path to my folder')
files = os.listdir()
df = pd.concat([pd.read_csv(fp).assign(New=os.path.basename(fp)) for fp in files])

但是,此代码不会将所有 Y 值 append 到一列下。 (但是,所有其他方面似乎都有效)。有人可以帮助编写代码,以便所有 Y 值都在一个列下吗?

最佳答案

在将 dataframe append 到您的列表之前,以下内容应该通过创建 filename 列来工作。

import os
import pandas as pd

file_list = []
for file in os.listdir():
if file.endswith('.csv'):
df = pd.read_csv(file,sep=";")
df['filename'] = file
file_list.append(df)

all_days = pd.concat(file_list, ignore_index=True)
all_days.to_csv("all.txt")

关于python - 如何 append 多个 CSV 文件并在 Python 中添加一个指示文件名的 append 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54172932/

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