gpt4 book ai didi

python - 从多个 csv 文件中抓取一个特定的列并合并为一个

转载 作者:太空宇宙 更新时间:2023-11-04 08:02:41 25 4
gpt4 key购买 nike

我只想从我的所有 csv 文件中获取第 4 列中的数据,并将数据写入单个文件。每个第 4 列都有一个唯一的标题名称,其中包含根文件夹的名称+csv 名称,如 FolderA1

文件夹A/

1.csv |INFO  INFO  INFO  FolderA1  INFO
Apple Apple Apple Orange Apple

2.csv |INFO INFO INFO FolderA2 INFO
Apple Apple Apple Cracker Apple

3.csv |INFO INFO INFO FOLDERA3 INFO
Apple Apple Apple Orange Apple

我如何才能将第 4 列数据过滤到单个 .xlsx 文件中,并将下一个文件夹 csv 放入新工作表或将其与之前的文件夹 csv 分开?

concentrated.xlsx | FOLDERA1 FOLDERA2 FOLDERA3   FOLDERB1 FOLDERB2 FOLDERB3
ORANGE CRACKER ORANGE ORANGE CRACKER ORANGE

最佳答案

我会使用 pandas.read_csv 附带的 usecols 参数。

def read_4th(fn):
return pd.read_csv(fn, delim_whitespace=1, usecols=[3])

files = ['./1.csv', './2.csv', './3.csv']

big_df = pd.concat([read_4th(fn) for fn in files], axis=1)

big_df.to_excel('./mybigdf.xlsx')

对于多个文件夹,使用 glob

假设您有两个文件夹“FolderA”和“FolderB”,它们都位于文件夹“./”中,并且您想要两个文件夹中的所有 csv 文件。

from glob import glob

files = glob('./*/*.csv')

然后按照上面指定的方式运行其余部分。

关于python - 从多个 csv 文件中抓取一个特定的列并合并为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37349386/

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