From: Tom D. <tom...@al...> - 2006-08-31 18:11:31
|
wrote the last email before reading your a = array([1,'A', None]) comment. I definately agree with you on that. On 8/31/06, Tom Denniston <tom...@al...> wrote: > > Yes one can take a toy example and hack it to work but I don't > necessarily have control over the input as to whether it is a list of object > arrays, list of 1d heterogenous arrays, etc. Before I didn't need to worry > about the input because numpy understood that a list of 1d arrays is a > 2d piece of data. Now it understands this for all dtypes except object. My > question was is this new set of semantics preferable to the old. > > I think your example kind of proves my point. Does it really make any > sense for the following two ways of specifying an array give such different > results? They strike me as _meaning_ the same thing. Doesn't it seem > inconsistent to you? > > > In [13]: array([array([1,'A', None], dtype=object),array([2,2,'Some > string'],dtype=object)], dtype=object).shape > Out[13]: (2,) > > and > > In [14]: array([array([1,'A', None], dtype=object),array([2,2,'Some > string'],dtype=object)]).shape > Out[14]: (2, 3) > So my question is what is the _advantage_ of the new semantics? The two > examples above used to give the same results. In what cases is it > preferable for them to give different results? How does it make life > simpler? > > > On 8/31/06, Charles R Harris <cha...@gm...> wrote: > > > On 8/31/06, Tom Denniston <tom...@al... > wrote: > > > But i have hetergenious arrays that have numbers and strings and > > NoneType, etc. > > > > Take for instance: > > > > In [11]: numpy.array([numpy.array([1,'A', None]), > > numpy.array([2,2,'Some string'])], dtype=object) > > Out[11]: > > array([[1, A, None], > > [2, 2, Some string]], dtype=object) > > > > In [12]: numpy.array([ numpy.array([1,'A', None]), > > numpy.array([2,2,'Some string'])], dtype=object).shape > > Out[12]: (2, 3) > > > > Works fine in Numeric and pre beta numpy but in beta numpy versions i > > get: > > > I think you want: > > In [59]: a = array([array([1,'A', None],dtype=object),array([2,2,'Some > string'],dtype=object)]) > > In [60]: a.shape > Out[60]: (2, 3) > > > Which makes good sense to me. > > Chuck > > > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > _______________________________________________ > Numpy-discussion mailing list > Num...@li... > https://lists.sourceforge.net/lists/listinfo/numpy-discussion > > > > > |