gpt4 book ai didi

R 的 ifelse 语句的 Python 版本

转载 作者:太空狗 更新时间:2023-10-30 00:27:28 25 4
gpt4 key购买 nike

在学习了 R 和一个简单的 ifelse 语句之后,我正在尝试学习 Python。

在 R 中我有:

df$X <- if(df$A == "-1"){-df$X}else{df$X}

但我不确定如何在 Python 中实现它,我已经尝试过:

df['X'][df['A'] <1] = -[df['X']
df['X'][df['A'] >1] = [df['X']

但这会导致错误,希望得到一些帮助。

最佳答案

等价于 np.where :

import numpy as np
np.where(df['A'] < 1, -df['X'], df['X'])

这会检查列中的值是否为 A小于 1。如果是,则返回 df['X'] 中的相应值乘以 -1。 ,否则返回df['X']中对应的值.

也就是说,您的错误/警告可能是由于链式索引而引发的。而不是 df['X'][df['A'] <1]你应该使用 df.loc[df['A'] <1, 'X'] .然后您可以按照问题中所示的两个步骤执行相同的操作。

关于R 的 ifelse 语句的 Python 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43711020/

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