Could numpy.matlib.nanmax return a matrix?

Pierre GM pgmdevlist at
Wed Nov 15 20:00:20 CST 2006

On Wednesday 15 November 2006 12:55, Keith Goodman wrote:
> I didn't know you could use masked arrays with matrices. I guess I
> took the name literally.

Please check the developer zone:
for an alternative implementation of masked arrays that support subclasses of 

> I think an easier way to use masked arrays would be to introduce a new
> thing called mis.
> I could make a regular matrix
> x  = M.rand(3,3)
> and assign a missing value
> x[0,0] = M.mis
> x would then behave as a missing array matrix.
> I think that would make missing arrays accessible to everyone.

Well, there's already something like that, sort of: MA.masked, or 
MA.masked_singleton. The emphasis here is on "sort of".

That works well if x is already a masked array. Else, a "ValueError: setting 
an array element with a sequence" is raised. I haven't tried to find where 
the problem comes from (ndarray.__setitem__ ? The masked_singleton larger 
than it seems ?), but I wonder whether it's an issue worth solving.

If you want to get a masked_matrix from x, just type x=masked_array(x). You 
won't be able to access some specific matrix attributes (A, T), at least 
directly, but you can fill your masked_matrix and get a matrix back. And 
multiplication of two masked_matrices work as expected ! 

The main advantage of this approach is that we don't overload ndarray or 
matrices, the work is solely on the masked_array side.

Take Surveys. Earn Cash. Influence the Future of IT
Join's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash

More information about the Numpy-discussion mailing list