使用Pandas分组依据数据框中的第一行来计算累积差异

达根

我有以下基于每日数据的分组数据框

Studentid  Year Month BookLevel

 JSmith    2015  12    1.4
           2016   1    1.6
                  2    1.8
                  3    1.2
                  4    2.0

 MBrown    2016   1    3.0        
                  2    3.2
                  3    3.6 

我想为每个Studentid计算从BookLevel起点开始的差异。当前的BookLevel是来自GroupBy的.max计算,以获得每个学生每个月的最高bookLevel

我正在寻找的是这样的:

 Studentid    Year   Month   BookLevel    Progress Since Start

  JSmith      2015     12       1.4         0 (or NAN)
              2016      1       1.6        .2
                        2       1.8        .4
                        3       1.2       -.2
                        4       2.0        .6

              2016      1       3.0         0 (or NAN)   
  MBrown                2       3.2        .2
                        3       3.6        .6

我是Python / Pandas的新手,并且尝试了很多事情,但是没有什么比这更接近。

埃德·楚姆

好的,这应该可以工作,如果我们groupby在第一个级别上,并且通过调用调用从返回的系列中减去BookLevel transformfirst那么我们可以将其添加为新的所需列:

In [47]:
df['ProgressSinceStart'] = df['BookLevel'] - df.groupby(level='Studentid')['BookLevel'].transform('first')
df

Out[47]:
                      BookLevel  ProgressSinceStart
Studentid Year Month                               
JSmith    2015 12           1.4                 0.0
          2016 1            1.6                 0.2
               2            1.8                 0.4
               3            1.2                -0.2
               4            2.0                 0.6
MBrown    2016 1            3.0                 0.0
               2            3.2                 0.2
               3            3.6                 0.6

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Pandas分组依据数据框中的第一行来计算累积差异

来自分类Dev

分组中第一行和最后一行之间的差异

来自分类Dev

用pandas在Python中对数据进行分组会产生空白的第一行

来自分类Dev

使用Pandas Grouper分组数据框时控制最后一行标签

来自分类Dev

在pandas数据框中创建一列,该列计算两行之间的差异

来自分类Dev

从 R 中的数据框中提取第一行

来自分类Dev

使用 r 中的一行对数据框进行分组

来自分类Dev

如何仅在一行中使用分组依据?

来自分类Dev

计算分组依据并融化数据框

来自分类Dev

在pandas数据框中放入重复的第一行和最后一行

来自分类Dev

熊猫分组数据框,计算连续行之间的差异

来自分类Dev

熊猫数据框适用于上一行以计算差异

来自分类Dev

通过一行访问Pandas数据框中的数据

来自分类Dev

设置数据框中列的第一行和最后一行

来自分类Dev

提取熊猫中数据框的第一行和最后一行

来自分类Dev

选择数据框中的第一行和最后一行?

来自分类Dev

计算存储在数据框中的轮廓之间的欧式距离。使用一行作为参考

来自分类Dev

从数据框的第一行创建数据框的标题

来自分类Dev

使用ID对数据进行分组,并从第一行和最后一行获取数据

来自分类Dev

根据条件删除pandas数据框中的一行

来自分类Dev

将第一行转换为数据框列表中的列名,然后删除第一行

来自分类Dev

熊猫数据框中的MultiIndex分组依据

来自分类Dev

如何计算数据框分组依据中行的唯一组合?

来自分类常见问题

通过数据框中的唯一ID获取第一行和最后一行的值

来自分类Dev

通过数据框中的唯一ID获取第一行和最后一行的值

来自分类Dev

分类数据的累积值计数,分组依据

来自分类Dev

使用上一行的计算值来计算当前

来自分类Dev

SQL中连续的行之间的差异,包括第一行和最后一行?

来自分类Dev

如何在时间序列数据框中索引每天的第一行和最后一行?

Related 相关文章

  1. 1

    使用Pandas分组依据数据框中的第一行来计算累积差异

  2. 2

    分组中第一行和最后一行之间的差异

  3. 3

    用pandas在Python中对数据进行分组会产生空白的第一行

  4. 4

    使用Pandas Grouper分组数据框时控制最后一行标签

  5. 5

    在pandas数据框中创建一列,该列计算两行之间的差异

  6. 6

    从 R 中的数据框中提取第一行

  7. 7

    使用 r 中的一行对数据框进行分组

  8. 8

    如何仅在一行中使用分组依据?

  9. 9

    计算分组依据并融化数据框

  10. 10

    在pandas数据框中放入重复的第一行和最后一行

  11. 11

    熊猫分组数据框,计算连续行之间的差异

  12. 12

    熊猫数据框适用于上一行以计算差异

  13. 13

    通过一行访问Pandas数据框中的数据

  14. 14

    设置数据框中列的第一行和最后一行

  15. 15

    提取熊猫中数据框的第一行和最后一行

  16. 16

    选择数据框中的第一行和最后一行?

  17. 17

    计算存储在数据框中的轮廓之间的欧式距离。使用一行作为参考

  18. 18

    从数据框的第一行创建数据框的标题

  19. 19

    使用ID对数据进行分组,并从第一行和最后一行获取数据

  20. 20

    根据条件删除pandas数据框中的一行

  21. 21

    将第一行转换为数据框列表中的列名,然后删除第一行

  22. 22

    熊猫数据框中的MultiIndex分组依据

  23. 23

    如何计算数据框分组依据中行的唯一组合?

  24. 24

    通过数据框中的唯一ID获取第一行和最后一行的值

  25. 25

    通过数据框中的唯一ID获取第一行和最后一行的值

  26. 26

    分类数据的累积值计数,分组依据

  27. 27

    使用上一行的计算值来计算当前

  28. 28

    SQL中连续的行之间的差异,包括第一行和最后一行?

  29. 29

    如何在时间序列数据框中索引每天的第一行和最后一行?

热门标签

归档