From: Erin S. <eri...@gm...> - 2006-11-13 01:10:18
|
On 11/12/06, Erin Sheldon <eri...@gm...> wrote: > On 11/12/06, Pierre GM <pgm...@gm...> wrote: > > > > You could try the fromarrays function of numpy.core.records > > > > >>> mydescriptor = {'names': (a','b','c','d'), 'formats':('f4', 'f4', 'f4', > > 'f4')} > > >>> a = N.core.records.fromarrays(N.transpose(yourlist), dtype=mydescriptor) > > > > The 'transpose' function ensures that 'fromarrays' sees 4 arrays (one for each > > column). Actually, there is a problem with that approach. It first converts the entire array to a single type, by default a floating type. For very large integers this precision is insufficient. For example, I have the following integer in my arrays: 94137100072000193L which ends up as 94137100072000192 after going to a float and then back to an integer. Erin |