繁体   English   中英

创建具有理解功能的熊猫数据框

[英]Creating Pandas dataframes with a function of comprehension

我有一个带有称为Dir的列的数据框,其中包含五个值:N,S,E,W和C。我已将它们拆分为单独的数据框,如下所示:

df_N = df[(df['Dir'] == 'N')]
df_S = df[(df['Dir'] == 'S')]
df_E = df[(df['Dir'] == 'E')]
df_W = df[(df['Dir'] == 'W')]
df_C = df[(df['Dir'] == 'C')]

但是,我想创建一个为我执行此操作的函数或列表理解,因此,如果数据中的值发生更改,则无需重新编码。

我创建了一个值列表,如下所示:

CP_Vals = Series.unique(dftc2['iDir']).tolist()

但是我没有大量的Python使用经验,因此我正在努力创建使之自动化的东西。 我在想类似的东西:

for x in CP_Vals:
    df_x = df[(df['iDir'] == '%s' % x)]

这可能吗? 提前致谢!

您可以使用字典来存储使用相应名称as键获取的不同数据帧。 范例-

CP_Vals = dftc2['iDir'].unique().tolist()
df_dict = {'df_{}'.format(x): df[(df['iDir'] == x)] for x in CP_Vals}

请注意,字典理解仅在Python 2.7+中可用。 另外,在此之后,您可以访问特定的DataFrame,例如df_dict['df_N']等。

暂无
暂无

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

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