如何遍历目录,仅提取.txt文件,并将每个.txt文件放入单独但可访问的DataFrame中?

时间:2017-03-22 19:17:56

标签: python pandas numpy dataframe

我有一个PDF文件和大约130个.txt文件。

PDF文件无用,需要跳过。每个.txt文件都包含名称数据,每个.txt文件代表一年,范围从1880年到2010年。

所有.txt文件都具有相同的格式:名称,性别,在该特定年份具有该名称的人数。下面是其中一个.txt文件的示例:

Mary,M,8754
Susan,M,5478
Brandy,M,5214
etc...

每个.txt文件中可能有数千个名称。我的问题基本上是标题所要求的。我想知道我如何能够有效地获取每个.txt文件并将它们放入sepearte但可访问的DataFrames。我希望能够快速搜索并提取特定名称的均值或标准偏差等内容。

我已经查看过多个类似问题/疑虑的主题,但其中没有一个对我有任何实际用途:

Import multiple csv files into pandas and concatenate into one DataFrame Read multiple *.txt files into Pandas Dataframe with filename as column header

creating pandas data frame from multiple files

赞赏任何建议。

1 个答案:

答案 0 :(得分:1)

import pandas as pd
from glob import glob

path = 'your_path' # use your path
files = glob(path + '/*.txt')

get_df = lambda f: pd.read_csv(f, header=None, names=['Name', 'Sex', 'Count'])

dodf = {f: get_df(f) for f in files}