设置NumPy掩码数组的填充值
要设置掩码数组的填充值,请在Python NumPy中使用**ma.MaskedArray.set_fill_value()**方法。掩码数组的填充值是一个标量。
掩码数组是标准numpy.ndarray和掩码的组合。掩码要么是nomask,表示关联数组的任何值均有效,要么是一个布尔数组,用于确定关联数组的每个元素的值是否有效。
NumPy提供全面的数学函数、随机数生成器、线性代数例程、傅里叶变换等等。它支持各种硬件和计算平台,并且与分布式、GPU和稀疏数组库兼容良好。
步骤
首先,导入所需的库:
import numpy as np import numpy.ma as ma
使用numpy.array()方法创建一个包含整数元素的数组:
arr = np.array([[65, 68, 81], [93, 33, 39], [73, 88, 51], [62, 45, 67]])
print("Array...
", arr)
print("
Array type...
", arr.dtype)获取数组的维度:
print("
Array Dimensions...
",arr.ndim)
创建一个掩码数组并掩盖其中一些无效的值。我们使用fill_value参数来设置填充值:
maskArr = ma.masked_array(arr, mask =[[1, 1, 0], [ 1, 0, 0], [0, 1, 0], [0, 1, 0]], fill_value = 9999)
print("
Our Masked Array
", maskArr)
print("
Our Masked Array type...
", maskArr.dtype)获取掩码数组的维度:
print("
Our Masked Array Dimensions...
",maskArr.ndim)
获取掩码数组的形状:
print("
Our Masked Array Shape...
",maskArr.shape)获取掩码数组的元素个数:
print("
Elements in the Masked Array...
",maskArr.size)
要获取填充值,请使用ma.MaskedArray.get_fill_value()方法:
print("
Result (fill value)...
",maskArr.get_fill_value())要设置掩码数组的填充值,请使用ma.MaskedArray.set_fill_value()方法。掩码数组的填充值是一个标量:
maskArr.set_fill_value(1111)
print("
Result (updated fill value)...
",maskArr.get_fill_value())示例
import numpy as np
import numpy.ma as ma
# Create an array with int elements using the numpy.array() method
arr = np.array([[65, 68, 81], [93, 33, 39], [73, 88, 51], [62, 45, 67]])
print("Array...
", arr)
print("
Array type...
", arr.dtype)
# Get the dimensions of the Array
print("
Array Dimensions...
",arr.ndim)
# Create a masked array and mask some of them as invalid
# We have used the fill_value parameter to set the fill value
maskArr = ma.masked_array(arr, mask =[[1, 1, 0], [ 1, 0, 0], [0, 1, 0], [0, 1, 0]], fill_value = 9999)
print("
Our Masked Array
", maskArr)
print("
Our Masked Array type...
", maskArr.dtype)
# Get the dimensions of the Masked Array
print("
Our Masked Array Dimensions...
",maskArr.ndim)
# Get the shape of the Masked Array
print("
Our Masked Array Shape...
",maskArr.shape)
# Get the number of elements of the Masked Array
print("
Elements in the Masked Array...
",maskArr.size)
# To get the fill value, use the ma.MaskedArray.get_fill_value() method
print("
Result (fill value)...
",maskArr.get_fill_value())
# To set the fill value of a masked array, use the ma.MaskedArray.set_fill_value() method
# The filling value of the masked array is a scalar maskArr.set_fill_value(1111)
print("
Result (updated fill value)...
",maskArr.get_fill_value())输出
Array... [[65 68 81] [93 33 39] [73 88 51] [62 45 67]] Array type... int64 Array Dimensions... 2 Our Masked Array [[-- -- 81] [-- 33 39] [73 -- 51] [62 -- 67]] Our Masked Array type... int64 Our Masked Array Dimensions... 2 Our Masked Array Shape... (4, 3) Elements in the Masked Array... 12 Result (fill value)... 9999 Result (updated fill value)... 9999
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP