Thanks. I wouldn't have ordinarily pushed so much, but I wanted to hit the bugfix release.
Ryan David Huard wrote: > Ryan, I committed your patch to the trunk and added a test for it from > your failing example. > > Jarrod, though I'm also wary to touch the branch so late, the patch is > minor and I don't see how it could break something that was not already > broken. > > David > > 2008/7/20 Ryan May <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>: > > Jarrod Millman wrote: > > Hello, > > This is a reminder that 1.1.1rc1 will be tagged tonight. Chuck is > planning to spend some time today fixing a few final bugs on the > 1.1.x > branch. If anyone else is planning to commit anything to the 1.1.x > branch today, please let me know immediately. Obviously now is not > the time to commit anything to the branch that could break anything, > so please be extremely careful if you have to touch the branch. > > Once the release is tagged, Chris and David will create binary > installers for both Windows and Mac. Hopefully, this will give > us an > opportunity to have much more widespread testing before releasing > 1.1.1 final at the end of the month. > > Can I get anyone to look at this patch for loadtext()? > > I was trying to use loadtxt() today to read in some text data, and I had > a problem when I specified a dtype that only contained as many elements > as in columns in usecols. The example below shows the problem: > > import numpy as np > import StringIO > data = '''STID RELH TAIR > JOE 70.1 25.3 > BOB 60.5 27.9 > ''' > f = StringIO.StringIO(data) > names = ['stid', 'temp'] > dtypes = ['S4', 'f8'] > arr = np.loadtxt(f, usecols=(0,2),dtype=zip(names,dtypes), skiprows=1) > > With current 1.1 (and SVN head), this yields: > > IndexError Traceback (most recent > call last) > > /home/rmay/<ipython console> in <module>() > > /usr/lib64/python2.5/site-packages/numpy/lib/io.pyc in loadtxt(fname, > dtype, comments, delimiter, converters, skiprows, usecols, unpack) > 309 for j in xrange(len(vals))] > 310 if usecols is not None: > --> 311 row = [converterseq[j](vals[j]) for j in usecols] > 312 else: > 313 row = [converterseq[j](val) for j,val in > enumerate(vals)] > > IndexError: list index out of range > ----------------------------------------- > > I've added a patch that checks for usecols, and if present, correctly > creates the converters dictionary to map each specified column with > converter for the corresponding field in the dtype. With the attached > patch, this works fine: > > >arr > array([('JOE', 25.300000000000001), ('BOB', 27.899999999999999)], > dtype=[('stid', '|S4'), ('temp', '<f8')]) > > > Thanks, > Ryan > > -- > Ryan May > Graduate Research Assistant > School of Meteorology > University of Oklahoma > > -- > Ryan May > Graduate Research Assistant > School of Meteorology > University of Oklahoma > > _______________________________________________ > Numpy-discussion mailing list > Numpy-discussion@scipy.org <mailto: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 _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion