首页 > 解决方案 > python中带有布尔值的向量方程

问题描述

我正在尝试创建一个方程式,您可以在其中输入一个数组或向量,它包含一个布尔函数。对于数组中满足这一点的项目(bool=True),然后以一种方式继续求解方程以产生另一个数组。

我在这里附上了在 R 中工作的类似代码,并希望在 python 中做类似的事情

a <- c(0,1,2,3,4,5)
b <- c(1,1,2,2,3,3)

a-b+5*(a==0|b==0)

它的输出是一个向量:

[1] 4 0 0 1 1 2

有谁知道如何在 python3 中做类似的事情,也许是 numpy?

标签: pythonvectorbooleanequation

解决方案


numpy

import numpy as np
a = np.array([0,1,2,3,4,5])
b = np.array([1,1,2,2,3,3])
a-b+5*((a==0)|(b==0))
#> array([4, 0, 0, 1, 1, 2])

推荐阅读