gpt4 book ai didi

python - 返回数据框底部具有最大/最小值的行(python/pandas)

转载 作者:太空狗 更新时间:2023-10-30 01:44:07 26 4
gpt4 key购买 nike

我想编写一个函数来查看数据帧,找到指定列中的最大值或最小值,然后返回整个数据帧,其中包含最大值或最小值的行位于底部。

我这样做是为了仅返回具有最大值或最小值的行。

def findAggregate(df, transType, columnName=None):

if transType == 'max1Column':
return df[df[columnName] == df[columnName].max()]

elif transType == 'min1Column':
return df[df[columnName] == df[columnName].min()]

鉴于下面的数据框,我想检查 col2 的最小值

原始数据框:

col1     col2     col3
blue 2 dog
orange 18 cat
black 6 fish

预期输出:

col1     col2     col3
blue 2 dog
orange 18 cat
black 6 fish
blue 2 dog

实际输出:

col1     col2     col3
blue 2 dog

最佳答案

关注指标值

并使用一个loc

i = df.col2.idxmin()
df.loc[[*df.index] + [i]]

col1 col2 col3
0 blue 2 dog
1 orange 18 cat
2 black 6 fish
0 blue 2 dog

相同的想法,但使用了 Numpy 和 iloc

i = np.arange(len(df))
a = df.col2.to_numpy().argmin()
df.iloc[np.append(i, a)]

col1 col2 col3
0 blue 2 dog
1 orange 18 cat
2 black 6 fish
0 blue 2 dog

关于python - 返回数据框底部具有最大/最小值的行(python/pandas),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57084473/

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