首页 > 解决方案 > 我们可以将 .txt 文件加载到 vaex 吗?

问题描述

我有 .txt 文件的文件夹,大小为 52.6 GB。.txt 文件位于不同的子文件夹中。每个子文件夹都有唯一的标签“F”、“G”等。每个子文件夹都有许多 .txt 文件。我需要将每个唯一标签(“F”,“G”)的所有 .txt 文件合并到一个文件中。我尝试使用vaex。但我找不到为 .txt 文件执行此操作的方法。有人可以帮我吗?

标签: bigdatavaex

解决方案


如果文本文件具有 csv 格式的数据,并且文件之间的结构相同,您可以使用:

df = vaex.open_many([fpath1, fpath2, ..., fpathX])

要获取所有文件名及其路径,您可以方便地使用pathlib递归地 glob 文件路径

from pathlib import Path

txt_files = Path('your_label_folder_path').rglob('*.txt')

# since this returns a generator and vaex.open_many expects a list 
# and while we're here, resolve the absolute path as well
txt_files = [txt.absolute() for txt in txt_files]

df = vaex.open_many(txt_files)

推荐阅读