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...