gpt4 book ai didi

python - 使用相对索引访问 DataFrame 数据

转载 作者:太空宇宙 更新时间:2023-11-04 00:14:45 24 4
gpt4 key购买 nike

我正在尝试使用有关行的信息来告知要查看 DataFrame 中的哪些其他数据。

我有一个像这样的 DataFrame:

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 处的最大数字是 26 位于下一个索引位置的同一列中。

索引 1 处的最大数字是 71 位于下一个索引位置的同一列中。

并且索引 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

关于python - 使用相对索引访问 DataFrame 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51314278/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com