根据熊猫中的索引值将一个数据帧分为多个数据帧

nish

我有一个df,如下所示:

             DateTime        ModFlow(cfs)     ObsFlow(cfs)  ModVol(f3)   ObsVol(f3)
Event
Event 1     8/15/2016 15:35   11.85926          0           0.039530867   0
Event 1     8/15/2016 10:05   30.05923          0           0.100197433   0
Event 1     8/15/2016 10:00   31.10118          0           0.1036706     0
Event 1     8/15/2016 9:55    32.17444          0           0.107248133   0
Event 1     8/15/2016 4:10    0.6783166      0.5650155      0.002261055   0.001883385
Event 10    6/23/2016 4:35    0.5573569      0.4814242      0.001857856   0.001604747
Event 10    6/23/2016 4:40    0.5536903      0.3544892      0.001845634   0.001181631
Event 10    6/23/2016 4:45    0.5502114      0.368421       0.001834038   0.00122807
Event 10    6/23/2016 4:50    0.5698021      0.501548       0.00189934    0.001671827
Event 10    6/23/2016 4:55    0.7525368      0.879257       0.002508456   0.002930857
Event 11    6/10/2016 8:05    0.6593155      0.6145511      0.002197718   0.002048504
Event 11    6/10/2016 8:10    0.6621117      0.8405573      0.002207039   0.002801858
Event 11    6/10/2016 8:15    0.6578091      0.8173375      0.002192697   0.002724458
Event 11    6/10/2016 8:20    0.6581948      0.871517       0.002193983   0.002905057
Event 12    4/26/2016 22:00   2.307288       2.588235       0.00769096    0.00862745
Event 12    4/26/2016 22:05   2.366998       3.091331       0.007889993   0.010304437
Event 12    4/26/2016 22:10   2.494073       3.278638       0.008313577   0.010928793
Event 12    4/26/2016 22:15   2.746868       3.083591       0.009156227   0.010278637
Event 12    4/26/2016 22:20   3.146326       2.877709       0.010487753   0.009592363
Event 12    4/26/2016 22:30   4.090476       2.354489       0.01363492    0.007848297

同样,直到事件47

我希望每个事件都有一个单独的数据框。预期输出如下所示:

Event1_df:

            DateTime      ModFlow(cfs)  ObsFlow(cfs)    ModVol(f3)  Obs Vol(f3)
Event                   
        8/15/2016 15:35    11.85926     0               0.039530867   0
        8/15/2016 10:05    30.05923     0               0.100197433   0
Event 1 8/15/2016 10:00    31.10118     0               0.1036706     0
        8/15/2016 9:55     32.17444     0               0.107248133   0
        8/15/2016 4:10     0.6783166    0.5650155       0.002261055   0.001883385

Event2_df:

           DateTime      ModFlow(cfs)   ObsFlow(cfs)    ModVol(f3)  Obs Vol(f3)
Event                   
        8/15/2016 15:35    11.85926     0               0.039530867   0
        8/15/2016 10:05    30.05923     0               0.100197433   0
Event 2 8/15/2016 10:00    31.10118     0               0.1036706     0
        8/15/2016 9:55     32.17444     0               0.107248133   0
        8/15/2016 4:10     0.6783166    0.5650155       0.002261055   0.001883385

其他事件也一样

我怎么可能呢?

由于Event是索引,因此您可以loc提取内容并将其放置在中dict

In [482]: {x: df.loc[x]  for x in df.index.unique()}
Out[482]:
{'Event1':          DateTime  ModFlow(cfs)  ObsFlow(cfs)  ModVol(f3)  ObsVol(f3)
 Event
 Event1  8/15/2016     11.859260      0.000000    0.039531    0.000000
 Event1  8/15/2016     30.059230      0.000000    0.100197    0.000000
 Event1  8/15/2016     31.101180      0.000000    0.103671    0.000000
 Event1  8/15/2016     32.174440      0.000000    0.107248    0.000000
 Event1  8/15/2016      0.678317      0.565016    0.002261    0.001883,
 'Event10':           DateTime  ModFlow(cfs)  ObsFlow(cfs)  ModVol(f3)  ObsVol(f3)  Event
 Event10  6/23/2016      0.557357      0.481424    0.001858    0.001605
 Event10  6/23/2016      0.553690      0.354489    0.001846    0.001182
 Event10  6/23/2016      0.550211      0.368421    0.001834    0.001228
 Event10  6/23/2016      0.569802      0.501548    0.001899    0.001672
 Event10  6/23/2016      0.752537      0.879257    0.002508    0.002931,
 'Event11':           DateTime  ModFlow(cfs)  ObsFlow(cfs)  ModVol(f3)  ObsVol(f3)  Event
 Event11  6/10/2016      0.659315      0.614551    0.002198    0.002049
 Event11  6/10/2016      0.662112      0.840557    0.002207    0.002802
 Event11  6/10/2016      0.657809      0.817338    0.002193    0.002724
 Event11  6/10/2016      0.658195      0.871517    0.002194    0.002905,
 'Event12':           DateTime  ModFlow(cfs)  ObsFlow(cfs)  ModVol(f3)  ObsVol(f3)  Event
 Event12  4/26/2016      2.307288      2.588235    0.007691    0.008627
 Event12  4/26/2016      2.366998      3.091331    0.007890    0.010304
 Event12  4/26/2016      2.494073      3.278638    0.008314    0.010929
 Event12  4/26/2016      2.746868      3.083591    0.009156    0.010279
 Event12  4/26/2016      3.146326      2.877709    0.010488    0.009592
 Event12  4/26/2016      4.090476      2.354489    0.013635    0.007848}

细节:

In [489]: df.index.unique()
Out[489]: array(['Event1', 'Event10', 'Event11', 'Event12'], dtype=object)

In [487]: df_split = {x: df.loc[x]  for x in df.index.unique()}

In [488]: df_split['Event1']
Out[488]:
         DateTime  ModFlow(cfs)  ObsFlow(cfs)  ModVol(f3)  ObsVol(f3)
Event
Event1  8/15/2016     11.859260      0.000000    0.039531    0.000000
Event1  8/15/2016     30.059230      0.000000    0.100197    0.000000
Event1  8/15/2016     31.101180      0.000000    0.103671    0.000000
Event1  8/15/2016     32.174440      0.000000    0.107248    0.000000
Event1  8/15/2016      0.678317      0.565016    0.002261    0.001883

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据Pandas中的索引将一个数据帧分为多个

来自分类Dev

根据Pandas中的索引将一个数据帧分为多个

来自分类Dev

根据R中的列名称将一个数据帧拆分为多个数据帧

来自分类Dev

根据Pandas中的公共列将一个数据帧拆分为多个子数据帧

来自分类Dev

根据另一个数据帧中的值将数据帧的列相乘

来自分类Dev

如何使用熊猫将多个数据帧连接到一个数据帧中

来自分类Dev

将一个熊猫数据帧合并到另一个熊猫数据帧,并从第二个数据帧中删除第一个数据帧中存在的值

来自分类Dev

根据另一个数据帧中的多个条件过滤数据帧

来自分类Dev

根据R中的两个匹配条件,将值从一个数据帧添加到另一个数据帧

来自分类Dev

R-将一个数据帧中的值与另一个数据帧中的多个值进行匹配

来自分类Dev

根据将另一个单元格与另一个数据帧的单元格进行比较来更改一个数据帧中单元格的值-熊猫

来自分类Dev

根据xts对象中的信息将数据帧分为多个数据帧

来自分类Dev

将多个数据帧合并为一个数据帧

来自分类Dev

将多个数据帧拆分,应用并合并为一个数据帧

来自分类Dev

如何将一个数据帧附加到python列表中的多个数据帧?

来自分类Dev

用基于索引的另一个数据帧中的行覆盖熊猫数据帧中的某些行

来自分类Dev

合并数据帧,以便将一个数据帧中的值插入到另一个数据帧中匹配的行号中

来自分类Dev

将数据从一个数据帧复制到另一个数据帧,然后根据值替换数据

来自分类Dev

在python熊猫中,如何合并两个数据帧,同时使用另一个的权重将值散布在一个数据中?

来自分类Dev

将多个数据帧合并为一个-熊猫

来自分类Dev

使用PySpark数据帧时,根据索引从一个数组中定位值,然后复制到另一个数组中

来自分类Dev

熊猫使用熊猫数据帧的索引更新同一索引上的另一个数据帧

来自分类Dev

根据与另一个数据帧的比较更新数据帧值

来自分类Dev

如何根据另一个数据帧中的行条件对一个数据帧的行索引进行矢量化查找

来自分类Dev

使用groupby和get_group将一个数据帧分为几个数据帧

来自分类Dev

根据来自另一个数据框的值将数据框拆分为多个数据框

来自分类Dev

将数据帧拆分为多个数据帧

来自分类Dev

在R中,如何根据另一个数据帧中的范围对一个数据帧中的值进行分类?

来自分类Dev

根据来自另一个数据帧的值替换数据帧中的行元素

Related 相关文章

  1. 1

    根据Pandas中的索引将一个数据帧分为多个

  2. 2

    根据Pandas中的索引将一个数据帧分为多个

  3. 3

    根据R中的列名称将一个数据帧拆分为多个数据帧

  4. 4

    根据Pandas中的公共列将一个数据帧拆分为多个子数据帧

  5. 5

    根据另一个数据帧中的值将数据帧的列相乘

  6. 6

    如何使用熊猫将多个数据帧连接到一个数据帧中

  7. 7

    将一个熊猫数据帧合并到另一个熊猫数据帧,并从第二个数据帧中删除第一个数据帧中存在的值

  8. 8

    根据另一个数据帧中的多个条件过滤数据帧

  9. 9

    根据R中的两个匹配条件,将值从一个数据帧添加到另一个数据帧

  10. 10

    R-将一个数据帧中的值与另一个数据帧中的多个值进行匹配

  11. 11

    根据将另一个单元格与另一个数据帧的单元格进行比较来更改一个数据帧中单元格的值-熊猫

  12. 12

    根据xts对象中的信息将数据帧分为多个数据帧

  13. 13

    将多个数据帧合并为一个数据帧

  14. 14

    将多个数据帧拆分,应用并合并为一个数据帧

  15. 15

    如何将一个数据帧附加到python列表中的多个数据帧?

  16. 16

    用基于索引的另一个数据帧中的行覆盖熊猫数据帧中的某些行

  17. 17

    合并数据帧,以便将一个数据帧中的值插入到另一个数据帧中匹配的行号中

  18. 18

    将数据从一个数据帧复制到另一个数据帧,然后根据值替换数据

  19. 19

    在python熊猫中,如何合并两个数据帧,同时使用另一个的权重将值散布在一个数据中?

  20. 20

    将多个数据帧合并为一个-熊猫

  21. 21

    使用PySpark数据帧时,根据索引从一个数组中定位值,然后复制到另一个数组中

  22. 22

    熊猫使用熊猫数据帧的索引更新同一索引上的另一个数据帧

  23. 23

    根据与另一个数据帧的比较更新数据帧值

  24. 24

    如何根据另一个数据帧中的行条件对一个数据帧的行索引进行矢量化查找

  25. 25

    使用groupby和get_group将一个数据帧分为几个数据帧

  26. 26

    根据来自另一个数据框的值将数据框拆分为多个数据框

  27. 27

    将数据帧拆分为多个数据帧

  28. 28

    在R中,如何根据另一个数据帧中的范围对一个数据帧中的值进行分类?

  29. 29

    根据来自另一个数据帧的值替换数据帧中的行元素

热门标签

归档