Python 使用相对索引访问数据帧数据

Python 使用相对索引访问数据帧数据,python,pandas,Python,Pandas,我试图使用关于行的信息来通知要查看整个数据帧中的哪些其他数据 我有这样一个数据帧: df = pd.DataFrame({'a':[1,5,9],'b':[2,6,3],'c':[0,7,1]}) a b c 0 1 2 0 1 5 6 7 2 9 3 1 a b c data 0 1 2 0 6 1 5 6 7 1 2 9 3 1 NaN 我想问这样的问题: 每行中最高值的下一个索引位置的值是多少 结果可能如下所示:

我试图使用关于行的信息来通知要查看整个数据帧中的哪些其他数据

我有这样一个数据帧:

df = pd.DataFrame({'a':[1,5,9],'b':[2,6,3],'c':[0,7,1]})

   a  b  c
0  1  2  0
1  5  6  7
2  9  3  1
   a  b  c data
0  1  2  0    6
1  5  6  7    1
2  9  3  1  NaN
我想问这样的问题:
每行中最高值的下一个索引位置的值是多少

结果可能如下所示:

df = pd.DataFrame({'a':[1,5,9],'b':[2,6,3],'c':[0,7,1]})

   a  b  c
0  1  2  0
1  5  6  7
2  9  3  1
   a  b  c data
0  1  2  0    6
1  5  6  7    1
2  9  3  1  NaN
索引
0
处的最大数字是
2
,而
6
位于下一个索引位置的同一列中

索引
1
处的最大数字是
7
,而
1
位于下一个索引位置的同一列中


索引
2
后没有数据,因此不会返回任何内容。

使用
.idxmax
查找每行最大值的列,然后使用
df.lookup
查找同一列中下一行的值

import pandas as pd

# Ignore the last row
lookups = df.idxmax(axis=1)[:-1]
#0    b
#1    c
#dtype: object

df['data'] = pd.Series(df.lookup(lookups.index+1, lookups))
#   a  b  c  data
#0  1  2  0   6.0
#1  5  6  7   1.0
#2  9  3  1   NaN