[Numpy-discussion] Bug with mafromtxt

Ryan May rmay31@gmail....
Sat Jan 24 17:23:02 CST 2009


Pierre GM wrote:
> Ryan,
> Thanks for reporting. An idea would be to force the dtype of the  
> masked column to the largest dtype of the other columns (in your  
> example, that would be int). I'll try to see how easily it can be done  
> early next week. Meanwhile, you can always give an explicit dtype at  
> creation.

Ok, thanks.  I've dug a little further, and it seems like the problem is that a
column of all missing values ends up as a column of all None's.  When you create
a (masked) array from a list of None's, you end up with an object array.  On one
hand I'd love for things to behave differently in this case, but on the other I
understand why things work this way.

Ryan

> 
> On Jan 24, 2009, at 5:58 PM, Ryan May wrote:
> 
>> Pierre,
>>
>> I've found what I consider to be a bug in the new mafromtxt (though  
>> apparently it
>> existed in earlier versions as well).  If you have an entire column  
>> of data in a
>> file that contains only masked data, and try to get mafromtxt to  
>> automatically
>> choose the dtype, the dtype gets selected to be object type.  In  
>> this case, I'd
>> think the better behavior would be float, but I'm not sure how hard  
>> it would be
>> to make this the case.  Here's a test case:
>>
>> import numpy as np
>> from StringIO import StringIO
>> s = StringIO('1 2 3\n4 5 6\n')
>> a = np.mafromtxt(s, missing='2,5', dtype=None)
>> print a.dtype
>>
>> Ryan
>>
>> -- 
>> Ryan May
>> Graduate Research Assistant
>> School of Meteorology
>> University of Oklahoma
>> _______________________________________________
>> Numpy-discussion mailing list
>> Numpy-discussion@scipy.org
>> http://projects.scipy.org/mailman/listinfo/numpy-discussion
> 
> _______________________________________________
> Numpy-discussion mailing list
> Numpy-discussion@scipy.org
> http://projects.scipy.org/mailman/listinfo/numpy-discussion


-- 
Ryan May
Graduate Research Assistant
School of Meteorology
University of Oklahoma


More information about the Numpy-discussion mailing list