Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python多索引计算_Python_Indexing_Group By - Fatal编程技术网

Python多索引计算

Python多索引计算,python,indexing,group-by,Python,Indexing,Group By,我有一个包含许多证券(sedols)和许多日期(carrydt)的数据框架,在这些日期内,证券被交易。我想循环浏览每个sedol,并根据之前的日期对该交易进行分类。我想按3个类别对每笔交易进行分类: 第一-安全的第一个实例 无变化-当日结转率与之前日期结转率一致 调整-日期结转率与前一日期不同 下面是我的dataframe外观的快照。类型是我需要添加到数据帧中的列 carry_dt carry_rate sedol type 0 2/8/2018

我有一个包含许多证券(sedols)和许多日期(carrydt)的数据框架,在这些日期内,证券被交易。我想循环浏览每个sedol,并根据之前的日期对该交易进行分类。我想按3个类别对每笔交易进行分类:

  • 第一-安全的第一个实例
  • 无变化-当日结转率与之前日期结转率一致
  • 调整-日期结转率与前一日期不同
  • 下面是我的dataframe外观的快照。类型是我需要添加到数据帧中的列

         carry_dt  carry_rate    sedol        type
    0    2/8/2018        1.42  BZ6C639       first
    1    2/9/2018        1.42  BZ6C639   no change
    2   2/10/2018        1.42  BZ6C639   no change
    3   2/11/2018        1.42  BZ6C639   no change
    4   2/12/2018        1.50  BZ6C639  adjustment
    5   2/13/2018        1.50  BZ6C639   no change
    6   2/14/2018        1.70  BZ6C639  adjustment
    7   2/15/2018        1.42  1234243       first
    8   2/16/2018        1.42  1234243   no change
    9   2/17/2018        1.42  1234243   no change
    10  2/18/2018        1.42  1234243   no change
    11  2/19/2018        1.42  1234243   no change
    12  2/20/2018        1.90  1234243  adjustment
    
    您可以使用:

    详情:

    print (s)
    0      NaN
    1     0.00
    2     0.00
    3     0.00
    4     0.08
    5     0.00
    6     0.20
    7      NaN
    8     0.00
    9     0.00
    10    0.00
    11    0.00
    12    0.48
    Name: carry_rate, dtype: float64
    

    你的问题是什么?欢迎来到SO。请将您的数据发布为测试,而不是图像或链接。例如,尝试
    df.head()
    。另请参见。我需要知道使用假定的多重索引计算columndataset.head()Out[116]类型的公式:结转率sedol 0 1/2/2018 0.15 BP41ZD1 2 1/2/2018 0.15 2371823 1/2/2018 0.15 2369389 4 1/2/2018 0.15 2502139
    print (s)
    0      NaN
    1     0.00
    2     0.00
    3     0.00
    4     0.08
    5     0.00
    6     0.20
    7      NaN
    8     0.00
    9     0.00
    10    0.00
    11    0.00
    12    0.48
    Name: carry_rate, dtype: float64