如何从多个文件夹和子文件夹中读取.txt文件名并将其写入多个.csv文件

2024-04-25 19:24:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我在一个文件夹的子文件夹中有多个解压缩的.txt文件。子文件夹名称只是提取的.pdf文件的名称,.txt文件是在单独的文本文件中包含pdf每页文本的文件

例如:

已提取:myFile.pdf,有10页,因此被提取为10.txt文件,并保存到以下文件夹中, 输出文件夹-->;myFile文件夹-->;[csv文件夹、json文件夹、txtFiles文件夹]

我的目标10个文本文件位于“txtFiles文件夹”中 我有100个这样的pdf文件和100个文件夹中的文本文件

我使用线性SVM模型对pdf文档中的每个页面进行分类。现在,我已经为来自ML模型的目标文本文件创建了分类标签

在这里,我试图为每个文件创建一个.csv文件,使用.pdf文件名或第二个文件夹名,并将页码和相关预测标签写入.csv文件

filename = []
clfLabel = []
for root, dir, files in os.walk(folderPath):
    for name in files:
        if name endswith((".txt")):
            file = os.sep.join([root, name])
            with open(file) as textFile:
            text = textFile.read()
            cleanText = preprocessText(text)
            cleanText = [cleanText]
            tfidfText = loaded_vectorizer.transform(cleanText)
            predicted = svcModelpkl.predict(tfidfText)
            prediction = encoder.inverse_transform(predicted)
            filename.append(name)
            clfLabel.append(prediction)
            fileName = pd.DataFrame(filename)
            clfLabel = pd.Dataframe(clfLabel)
            data = pd.concat(["fileName", "clfLabel"], axis = 1, ignore = index, sort = False)
            data.columns = ["fileName", "clfLabel"]
            data.to_csv(name+".csv")

在这里,我希望为每个pdf或文件夹创建一个单独的.csv文件,该文件具有相同的名称、页码及其预测

myfile.pdf有10页 另一个文件有15页

myFile.csv

^{tb1}$

另一个文件.csv 等等

我是python新手,请帮助我实现这一点


热门问题