Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #82503
| Date | 2014-12-14 14:31 +0000 |
|---|---|
| From | Albert-Jan Roskam <fomcl@yahoo.com> |
| References | <548cd14c$0$13013$c3e8da3$5496439d@news.astraweb.com> |
| Subject | Re: numpy question (fairly basic, I think) |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.16946.1418567821.18130.python-list@python.org> (permalink) |
----- Original Message ----- > From: Steven D'Aprano <steve+comp.lang.python@pearwood.info> > To: python-list@python.org > Cc: > Sent: Sunday, December 14, 2014 12:52 AM > Subject: Re: numpy question (fairly basic, I think) > > Albert-Jan Roskam wrote: > >> Hi, >> >> I am new to numpy. I am reading binary data one record at a time (I have >> to) and I would like to store all the records in a numpy array which I >> pre-allocate. Below I try to fill the empty array with exactly one record, >> but it is filled with as many rows as there are columns. Why is this? It >> is probably something simple, but I am stuck! It is like the original >> record is not unpacked *as in tuple unpacking) into the array, so it >> remains one chunk, not an (nrows, ncols) structure. > > Can you simplify the example to something shorter that focuses on the issue > at hand? It isn't clear to me which bits of the code you show are behaving > the way you expect and which bits are not. Hi Steven, Thanks for replying. My code was so elaborate because I did not know which part made it go wrong. I think I have got it already. Numpy arrays (ndarrays) must be homogeneous wrt their datatype (dtype). Probably to make vectorization work (?). However, a structured array (which I was using) *can* contain multiple dtypes, but it can only be one-dimensional. Its records are tuples (or arrays). In this sense, even a structured array is homogeneous. I was trying to change the one-dim array into a two-dim array so I could easily retrieve columns. I now use a pandas DataFrame to do that. If my sample data would have contained *only* floats (or ints, or ...), my original approach would have worked. Thanks! Albert-Jan
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
numpy question (fairly basic, I think) Albert-Jan Roskam <fomcl@yahoo.com> - 2014-12-13 21:36 +0000
Re: numpy question (fairly basic, I think) Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2014-12-14 10:52 +1100
Re: numpy question (fairly basic, I think) Albert-Jan Roskam <fomcl@yahoo.com> - 2014-12-14 14:31 +0000
Re: numpy question (fairly basic, I think) Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2014-12-15 11:26 +1300
csiph-web