Python pandas - 获取行的索引

时间:2014-09-17 13:05:01

标签: python pandas

我有一个如下所示的数据框:

df_raw.head()
    Ticker   FY Periodicity  Measure     Val                Date
0  BP9DL90  2009         ANN     CPX  1000.00 2008-03-31 00:00:00
1  BP9DL90  2010         ANN     CPX   600.00 2009-03-25 00:00:00
2  BPRTD89  2010         ANN     CPX   600.00 2009-09-16 00:00:00
3  BP9DL90  2011         ANN     CPX   570.00 2010-03-17 00:00:00
4  BPSRD74  2011         ANN     GRM    57.09 2010-09-06 00:00:00

[5 rows x 6 columns]

如何过滤掉表格,以便为每个Date获取最大Ticker的行(与其他列值无关)? Date采用时间戳格式。

由于

1 个答案:

答案 0 :(得分:2)

使用idxmax

>>> df['Date'] = pd.to_datetime(df['Date']) # in case `Date` column is string
>>> i = df.groupby('Ticker')['Date'].idxmax().values
>>> df.loc[i,:]
    Ticker    FY Periodicity Measure     Val       Date
3  BP9DL90  2011         ANN     CPX  570.00 2010-03-17
2  BPRTD89  2010         ANN     CPX  600.00 2009-09-16
4  BPSRD74  2011         ANN     GRM   57.09 2010-09-06