data =[[55,607,66,87,1,432,66,87,1,3], [66,567,67,66,87,666,7,66,87,1], [6,67,696,66,87,1,87,57,67,66]] df = pd.DataFrame(data=data,columns=["a",'B','cc','tr','B','cc','tr','tr', 'B','cc']) df['max_val'] = df.max(axis=1) df['max_idx'] = df.idxmax(axis=1)
df:
0 1 2 3 4 5 6 7 8 9 max_val max_idx
0 55 607 66 87 1 432 66 87 1 3 607 1
1 66 567 67 66 87 666 7 66 87 1 666 5
2 6 67 696 66 87 1 87 57 67 66 696 2
上面是求数据帧的最大值及位置,下面我想再次从max_idx标注的列数右边开始的位置 求最小值和最小值的位置,不知道如何开始 另外想到的一个笨方法是从旧数据帧中,按max_idx列标注的数,提取每行右边数据组成 新的数据帧(如下),再去求最小值和最小值的位置 最好是能直接求出,求大师帮忙
新的dfw:
0 1 2 3 4 5 6 7 8 9
0 66 87 1 432 66 87 1 3
1 7 66 87 1
2 66 87 1 87 57 67 66