首页 > 解决方案 > 为 pandas 中的每个数据框返回自定义变量

问题描述

我觉得这是一个超级简单的问题,我只是没有在谷歌中表达它的词汇。开始:

我有一个数据框,我想将其切片并拆分为多个数据框。所以我为此创建了一个函数和一个 for 循环。

样品表

     col1 col2 col3 col4 col5
row1 A    Hi   my   name is
row2 A    Bye  see  you  later
row3 B    Bike on   side walk
row4 B    Car  on   str  drive
row5 C    Dog  on   grs  poop

我的代码是这样的

list_ = list(df['col1'].drop_duplicates())
for i in list_:
    dataframe_creator(i)

我的功能列出这个

def dataframe_creator(i):
        df = df[df['col1'] == i] 
        return df

所以这样做的结果是它只是为切片创建一个数据框,然后将它分配给同一个变量,这不是我想要的,我想要一个变量用于每次迭代。基本上,我希望在包含每个切片的末尾有 3 个标记为 dfA、dfB、dfC 的数据框。

标签: pythonpandasfunction

解决方案


制作字典将是这种情况的理想选择!:

df_slicer = {} 
for i in df.col1: 
    df_slicer[i] = df[df.col1==i]
#dfA:
df_slicer['A']

推荐阅读