将多个.txt文件作为数据帧加载到python中

问题描述 投票:1回答:1

我正在努力将多个.txt文件加载到桌面上的python中。我对Python完全陌生。我的目标是加载多个.txt文件,这些文件保存在同一目录中。 .txt文件是纯文本。在此先感谢您的帮助!

python file dataframe loading
1个回答
1
投票

您可以做这样的事情。


from collections import defaultdict
from pathlib import Path
import pandas as df

my_dir_path = "/parh/to/folder"

results = defaultdict(list)
for file in Path(my_dir_path).iterdir():
    with open(file, "r") as file_open:
        results["file_name"] = file.name
        results["text"].append(file_open.read())
df = pd.DataFrame(results)

0
投票

这可能不必要地长,但是如果需要,可以为文件名创建另一列:

import os
import csv
import pandas as pd
main_folder = 'path\\to\\some_folder'

def get_filename(path):
    filenames = []
    files = [i.path for i in os.scandir(path) if i.is_file()]

    for filename in files:
        filename = os.path.basename(filename)
        filenames.append(filename)
    return filenames

files = get_filename(main_folder)

with open('some.csv', 'w',  encoding = 'utf8', newline = '') as csv_file:
    for _file in files:

        file_name = _file
        with open(main_folder +'\\'+ _file,'r') as f:
            text = f.read()

            writer = csv.writer(csv_file)
            writer.writerow([file_name, text])

df = pd.read_csv('some.csv')


 # ...then whatever...
© www.soinside.com 2019 - 2024. All rights reserved.