gpt4 book ai didi

pandas - 如何制作新的 0 和 1 列?

转载 作者:行者123 更新时间:2023-12-05 04:21:23 27 4
gpt4 key购买 nike

我有一个 pandas 数据框,我想用 0 和 1 创建一个新列:

如果 col1 为零且 col2 为正,则将新列设置为 1。如果 'col1 为零且 col2 为负,则将新列设置为 0。如果 col1 为 1 且col2 为正,则设置新列为 0。如果 'col1 为 1 且 col2 为负,则将新列设置为 1。

col1   col2
0 2
0 -4
1 -2
1 5
1 9

new_colum
1
0
1
0
0

最佳答案

您可以确定 col2 是否为正并获得与 col1 的绝对差值( bool 值的行为类似于 0/1):

df['new_column'] = df['col1'].sub(df['col2'].gt(0)).abs()

或者,比较两个输出,您希望它们不同:

df['new_column'] = df['col1'].ne(df['col2'].gt(0)).astype(int)

输出:

   col1  col2  new_column
0 0 2 1
1 0 -4 0
2 1 -2 1
3 1 5 0
4 1 9 0

关于pandas - 如何制作新的 0 和 1 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74230172/

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