gpt4 book ai didi

python - 如何通过python csv()函数读取目录中的多个csv文件?

转载 作者:行者123 更新时间:2023-11-30 22:11:46 25 4
gpt4 key购买 nike

在我的一个目录中,我有多个 CSV 文件。我想通过 python 代码读取所有 CSV 文件的内容并打印数据,但到目前为止我还无法这样做。

所有 CSV 文件都具有相同的列数和相同的列名称。

我知道一种列出目录中所有 CSV 文件并通过“os”模块和“for”循环迭代它们的方法。

for files in os.listdir("C:\\Users\\AmiteshSahay\\Desktop\\test_csv"):

现在使用“csv”模块读取文件名

reader = csv.reader(files)

到目前为止,我希望输出是 CSV 文件的名称。这恰好是排序的。例如,名称为 1.csv、2.csv 等。但输出如下

<_csv.reader object at 0x0000019F97E0E730>
<_csv.reader object at 0x0000019F97E0E528>
<_csv.reader object at 0x0000019F97E0E730>
<_csv.reader object at 0x0000019F97E0E528>
<_csv.reader object at 0x0000019F97E0E730>
<_csv.reader object at 0x0000019F97E0E528>

如果我在 csv.reader() 之后添加 next() 函数,我会得到以下输出

['1']
['2']
['3']
['4']
['5']
['6']

这恰好是我的 CSV 文件名的首字母缩写。这是部分正确但不完全正确。

除此之外,一旦我迭代了文件,如何在屏幕上查看 CSV 文件的内容?今天我有 6 个文件。后来,我可以有 100 个文件。因此,在我的场景中不可能使用文件处理方法。

有什么建议吗?

最佳答案

我在开发项目过程中发现的最简单的方法是使用 dataframe、read_csv 和 glob。

import glob
import os
import pandas as pd

folder_name = 'train_dataset'
file_type = 'csv'
seperator =','
dataframe = pd.concat([pd.read_csv(f, sep=seperator) for f in glob.glob(folder_name + "/*."+file_type)],ignore_index=True)

这里,所有 csv 文件都加载到 1 个大数据帧中。

Project Folder structure

关于python - 如何通过python csv()函数读取目录中的多个csv文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51321021/

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