Creating a NumPy-masked array
Data is often messy and contains gaps or characters that we do not deal with often. Masked arrays can be utilized to disregard absent or invalid data points. A masked array from the numpy.ma
subpackage is a subclass of ndarray
with a mask. In this section, we will use the Lena Soderberg photo as the data source and act as if some of this data is corrupt. The following is the full code for the masked-array example from the masked.py
file in this book's code bundle:
import numpy import scipy import matplotlib.pyplot as plt lena = scipy.misc.lena() random_mask = numpy.random.randint(0, 2, size=lena.shape) plt.subplot(221) plt.title("Original") plt.imshow(lena) plt.axis('off') masked_array = numpy.ma.array(lena, mask=random_mask) print masked_array plt.subplot(222) plt.title("Masked") plt.imshow(masked_array) plt.axis('off') plt.subplot(223) plt.title("Log") plt.imshow(numpy.log(lena)) plt.axis('off') plt.subplot(224) plt.title("Log Masked") plt.imshow(numpy...