Numpy数组中np.where方法如何详细解析和应用?

2026-04-20 07:440阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计945个文字,预计阅读时间需要4分钟。

Numpy数组中np.where方法如何详细解析和应用?

`numpy.where` 函数有两种用法:

1.`np.where(condition, x, y)`:当条件满足时输出 `x`,不满足时输出 `y`。

2.如果是单维数组,可以理解为 `xv if c else yv for (c, xv, yv) in zip(condition, x, y)` 的形式,逐元素进行条件判断。

numpy.where (condition[, x, y])

numpy.where() 有两种用法:

1. np.where(condition, x, y)

满足条件(condition),输出x,不满足输出y。

如果是一维数组,相当于[xv if c else yv for (c,xv,yv) in zip(condition,x,y)]

>>> aa = np.arange(10) >>> np.where(aa,1,-1) array([-1, 1, 1, 1, 1, 1, 1, 1, 1, 1]) # 0为False,所以第一个输出-1 >>> np.where(aa > 5,1,-1) array([-1, -1, -1, -1, -1, -1, 1, 1, 1, 1]) >>> np.where([[True,False], [True,True]], # 官网上的例子 [[1,2], [3,4]], [[9,8], [7,6]]) array([[1, 8], [3, 4]])

上面这个例子的条件为[[True,False], [True,False]],分别对应最后输出结果的四个值。

阅读全文

本文共计945个文字,预计阅读时间需要4分钟。

Numpy数组中np.where方法如何详细解析和应用?

`numpy.where` 函数有两种用法:

1.`np.where(condition, x, y)`:当条件满足时输出 `x`,不满足时输出 `y`。

2.如果是单维数组,可以理解为 `xv if c else yv for (c, xv, yv) in zip(condition, x, y)` 的形式,逐元素进行条件判断。

numpy.where (condition[, x, y])

numpy.where() 有两种用法:

1. np.where(condition, x, y)

满足条件(condition),输出x,不满足输出y。

如果是一维数组,相当于[xv if c else yv for (c,xv,yv) in zip(condition,x,y)]

>>> aa = np.arange(10) >>> np.where(aa,1,-1) array([-1, 1, 1, 1, 1, 1, 1, 1, 1, 1]) # 0为False,所以第一个输出-1 >>> np.where(aa > 5,1,-1) array([-1, -1, -1, -1, -1, -1, 1, 1, 1, 1]) >>> np.where([[True,False], [True,True]], # 官网上的例子 [[1,2], [3,4]], [[9,8], [7,6]]) array([[1, 8], [3, 4]])

上面这个例子的条件为[[True,False], [True,False]],分别对应最后输出结果的四个值。

阅读全文