gpt4 book ai didi

python - ValueError:Series 的真值不明确。比较数据框列时使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()

转载 作者:太空宇宙 更新时间:2023-11-04 02:30:09 25 4
gpt4 key购买 nike

df['svc_port'] = np.where(
min(df['sPort'],df['dPort']) <= 1024,
min(df['sPort'],df['dPort']),
df['dPort']
)

在上面的代码中,min(df['sPort'],df['dPort']) <= 1024 - 同样的事情在 Compare two columns using pandas 中给出.我没有使用任何逻辑运算符。只是检查一个条件并替换它的值。

为什么我仍然收到此错误?

ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

最佳答案

您正在寻找元素方面的 min。内置的 min 函数仅适用于单个可迭代对象,不能同时用于多个可迭代对象。

您正在寻找的是沿着这些思路的东西,使用 np.minimum

v = np.minimum(df['sPort'], df['dPort'])
df['svc_port'] = np.where(v <= 1024, v, df['dPort'])

关于python - ValueError:Series 的真值不明确。比较数据框列时使用 a.empty、a.bool()、a.item()、a.any() 或 a.all(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49419955/

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