按列中的类别拆分和提取数据帧:python

时间:2018-11-12 22:17:10

标签: python pandas dataframe

我正在尝试编写一个函数,将一个数据帧“ df”拆分为较小的数据帧df1,df2 ... dfn,以便将具有相同ID(来自“ UNIT-ID”列)的所有记录组合在一起并存储在那些较小的数据框中,分别在文件夹中。我希望将它们命名为df1,df2..dfn,因为我计划分别遍历这n个数据帧,并使用它们来训练我的神经网络模型。我还希望将神经网络模型编写为一个函数,并将该函数应用于这些拆分的数据帧。

我已经检查了thisthis,但它讨论了groupby和对其进行迭代。我希望在相同的函数内完成组的提取,而不必引用该函数或使用函数外的另一行代码来提取该组,如上述链接所述

下面是一个示例,该示例显示了我的数据外观以及如何对其进行拆分。

Input:

UNIT-ID Q1  Q2  Q3
110-P1  37  487 0
110-P1  31  140 1
110-P1  46  214 1
110-P2  29  287 1
110-P2  45  131 1
110-P2  39  260 0
110-P5  13  413 1
110-P5  13  259 1
110-P5  16  226 1
110-P5  49  456 1
110-P5  39  275 1
110-P10 41  189 0
110-P10 32  269 0
110-P10 31  123 1
110-P10 32  487 0
110-P10 24  398 0
110-15  23  346 0
110-15  31  419 1
110-15  37  287 0
110-15  36  228 1
110-15  48  309 1

Output:
df1:        
 UNIT-ID    Q1  Q2  Q3
    110-P1  37  487 0
    110-P1  31  140 1
    110-P1  46  214 1

df2:            
 UNIT-ID    Q1  Q2  Q3
    110-P2  29  287 1
    110-P2  45  131 1
    110-P2  39  260 0

df3:        
 UNIT-ID    Q1  Q2  Q3
    110-P5  13  413 1
    110-P5  13  259 1
    110-P5  16  226 1
    110-P5  49  456 1
    110-P5  39  275 1

df4:        
 UNIT-ID    Q1  Q2  Q3
    110-P10 41  189 0
    110-P10 32  269 0
    110-P10 31  123 1
    110-P10 32  487 0
    110-P10 24  398 0

df5:        
 UNIT-ID    Q1  Q2  Q3
    110-15  23  346 0
    110-15  31  419 1
    110-15  37  287 0
    110-15  36  228 1
    110-15  48  309 1
    110-15  34  390 1
    110-15  67  238 1

任何帮助将不胜感激!

0 个答案:

没有答案