gpt4 book ai didi

python-3.x - 由 userId 指示的具有最大行数的数据集

转载 作者:行者123 更新时间:2023-12-04 10:14:37 25 4
gpt4 key购买 nike

我有一个这样的数据框:

ID date        var1 var2 var3
AB 22/03/2020 0 1 3
AB 29/03/2020 0 3 3
CD 22/03/2020 0 1 1

我想要一个新的数据集,如果它是一个最大列(也可能发生并列),则在行上留下与原始数据集相同数量的数据;否则设置 -1 如果它不是最大值。所以它会是:
ID date        var1   var2    var3
AB 22/03/2020 -1 -1 3
AB 29/03/2020 -1 3 3
CD 22/03/2020 -1 1 1

但我根本没有管理如何做到这一点,我也找不到它,我感谢任何帮助!

最佳答案

通过 DataFrame.select_dtypes 仅选择数字列:

df1 = df.select_dtypes(np.number)

或者按位置选择所有没有前两个的列 DataFrame.iloc :
df1 = df.iloc[:, 2:]

或者选择带有 var 的列标签由 DataFrame.filter :
df1 = df1.filter(like='var')

然后通过 DataFrame.where 设置新值与 max :
df[df1.columns] = df1.where(df1.eq(df1.max(1), axis=0), -1)
print (df)
ID date var1 var2 var3
0 AB 22/03/2020 -1 -1 3
1 AB 29/03/2020 -1 3 3
2 CD 22/03/2020 -1 1 1

关于python-3.x - 由 userId 指示的具有最大行数的数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61140591/

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