Christopher Barker wrote: >> The ASCII file has NaNs or NoData in them. > >> I am not able to read the file into python since it is not able to >> recognize NaN. > >> */[jv] I’m not sure this is applicable, but have you looked at the numpy >> extension package which has support for NaN?/* > > numpy does support NaN, and it's an excellent choice for this kind of > data anyway. It's also easy to turn a numpy array into a PIL image. > > However, I'm not sure it supports NaN text literals, and, if it does, > it's probably not platform independent, as it uses the system library > scanf(). > > I would check out numpy, but you may have to write the file scanning > code yourself, and translate the NaN. > > An example might help us get other ideas. For instance, what is the > ascii representation of NaN? "NaN", or something else? > > What system are you running on? For instance, on OS-X (Python 2.5, > compiled with gcc4.0.1), this works: > > >>> float("NaN") > nan > > But I don't think that works on the stock Windows Python. However, there > may be another literal that does. Try: > > >>> import numpy as N > >>> str(N.nan) > 'nan' > > and it might tell you the literal on your system. > > -Chris > Sadly not:
>>> import numpy >>> str(numpy.nan) '-1.#IND' >>> float(str(numpy.nan)) Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: invalid literal for float(): -1.#IND >>> repr(numpy.nan) '-1.#IND' >>> regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC http://www.holdenweb.com/ _______________________________________________ Image-SIG maillist - Image-SIG@python.org http://mail.python.org/mailman/listinfo/image-sig