为了账号安全,请及时绑定邮箱和手机立即绑定

选择特定多索引级别的行

选择特定多索引级别的行

Smart猫小萌 2022-07-12 18:22:08
我有一个带有多索引的数据框,我需要从第一个索引的每个部分中删除第一行。                        cshoc   prccd       mkt_val    returngvkey  datadate001075 2019-01-29  112080000.0   87.36  9.791309e+09  0.006916       2019-01-30  112080000.0   87.62  9.820450e+09  0.002976       2019-01-31  112080000.0   88.12  9.876490e+09  0.005706       2019-02-01  112080000.0   87.65  9.823812e+09 -0.005334       2019-02-04  112080000.0   87.53  9.810362e+09 -0.001369...                        ...     ...           ...       ...316056 2020-01-21   92917000.0  127.14  1.181347e+10 -0.007107       2020-01-22   92917000.0  129.45  1.202811e+10  0.018169       2020-01-23   92917000.0  129.80  1.206063e+10  0.002704       2020-01-24   92917000.0  128.00  1.189338e+10 -0.013867       2020-01-27   92917000.0  127.67  1.186271e+10 -0.002578`例如,代码将删除 datadate = '2019-01-29' 和 '2020-01-21' 处的行。第一行将始终具有不同的“数据日期”索引值,因此我无法选择特定值。我尝试过 .iloc[:,1:]、.iloc[:,:,1:] 之类的方法以及 IndexSlice 的方法。到目前为止,没有任何效果。任何帮助,将不胜感激!
查看完整描述

2 回答

?
收到一只叮咚

TA贡献1821条经验 获得超5个赞

tail

df.groupby(level=0).apply(lambda d: d.tail(-1))


查看完整回答
反对 回复 2022-07-12
?
DIEA

TA贡献1820条经验 获得超3个赞

你也可以试试这个


df[df.index.get_level_values(0).duplicated()]


Out[262]:

                         cshoc   prccd       mkt_val      return

gvkey  datadate

1075   2019-01-30  112080000.0   87.62  9.820450e+09    0.002976

       2019-01-31  112080000.0   88.12  9.876490e+09    0.005706

       2019-02-01  112080000.0   87.65  9.823812e+09   -0.005334

       2019-02-04  112080000.0   87.53  9.810362e+09   -0.001369

316056 2020-01-22   92917000.0  129.45  1.202811e+10    0.018169

       2020-01-23   92917000.0  129.80  1.206063e+10    0.002704

       2020-01-24   92917000.0  128.00  1.189338e+10   -0.013867

       2020-01-27   92917000.0  127.67  1.186271e+10  -0.002578`

注意:正如@piRSquared 的评论,在索引级别=0 的一行组中,此解决方案不会丢弃它。它仍然保留那一行,而@piRSquared 的解决方案将完全删除该组。


查看完整回答
反对 回复 2022-07-12
  • 2 回答
  • 0 关注
  • 151 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号