繁体   English   中英

在 for 循环中创建不同命名的数据框 - Python?

[英]Creating differently named data frames in a for loop - Python?

我正在为我每年(1971-2017)的数据创建一个数据框。 我有一个创建数据框的 for 循环,但它是一体的。 我将如何使它每年创建一个单独的 df ? 以下是我目前所拥有的。

for years in range(1971,2017):
        df = pd.read_csv('gene_%4.4d.txt'%years, sep='|', header=None, names=['PubMed ID','Title','Abstract','Affiliations','Pub Year','Pub Month','Pub Day','Journal'])

每次读入新文件时,都会覆盖df变量。 为了避免这种情况,我建议在循环外初始化一个列表,并将每个新的 DataFrame 存储在其中:

all_dfs = []

for years in range(1971, 2017):
    df = pd.read_csv('gene_%4.4d.txt' % years, sep='|', header=None, names=['PubMed ID', 'Title', 'Abstract', 'Affiliations', 'Pub Year', 'Pub Month', 'Pub Day', 'Journal'])
    all_dfs.append(df)

现在all_dfs是所有 DataFrame 的列表。 (接下来要做的一个常见事情是将它们全部组合成一个大型 DataFrame,例如pd.concat(all_dfs)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM