📜  Python中的numpy.place(1)

📅  最后修改于: 2023-12-03 15:34:25.604000             🧑  作者: Mango

Python中的numpy.place

简介

NumPy是Python中的一种开源数学计算库。它包含一个强大的N维数组对象,广播功能以及对数组执行快速操作的便利函数。在NumPy中,对于数组元素的条件替换可以使用numpy.place函数。

语法
numpy.place(arr, mask, vals)

参数说明:

  • arr: 原始的Numpy数组。
  • mask: bool型Numpy数组,用来标记arr数组中需要替换的数据。
  • vals: 把值赋给arr数组中True值对应的位置。
示例
import numpy as np 

# 创建一个3x3的数组
a = np.array([[1,2,3], [4,5,6], [7,8,9]])

#创建一个bool型数组
b = np.array([[True,False,False], [False,True,False], [False,False,True]])

#把a中符合条件的元素替换为0
np.place(a, b, 0)
print(a.tolist())

运行结果如下:

[[0, 2, 3], [4, 0, 6], [7, 8, 0]]
注意事项
  • numpy.place函数会对原始数据进行修改。
  • numpy.place函数将数组中True位置对应的元素赋值为vals数组中对应的元素,所以需要保证vals的长度与True数目相同,不然会出现错误。