435,453 Members | 3,194 Online + Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,453 IT Pros & Developers. It's quick & easy.

numarray question

 P: n/a I tried to initialize a float point array by: import numarray xur = numarray.fromfunction(lambda x,y,z:x*y*z, (2, 2, 2)) but I ended up with an integer array even though x, y, and z are all floats. BTW, how do you unzip NumTut in windows? And is there a newer version? Thank you Howard Jul 18 '05 #1
3 Replies

 P: n/a SunX wrote: I tried to initialize a float point array by: import numarray xur = numarray.fromfunction(lambda x,y,z:x*y*z, (2, 2, 2)) but I ended up with an integer array even though x, y, and z are all floats. BTW, how do you unzip NumTut in windows? And is there a newer version? Thank you Howard You might try something like: import numarray xyz= lambda x,y,z:x*y*z xur = numarray.fromfunction(xyz, (6, 6, 3)) print xur Jul 18 '05 #2

 P: n/a You probably meant xyz = lambda x,y,z: float(x*y*z) or maybe even xyz = lambda x,y,z: float(x)*float(y)*float(z) /Jean Brouwers In article <2f*******************@news20.bellglobal.com>, Colin J. Williams wrote: SunX wrote: I tried to initialize a float point array by: import numarray xur = numarray.fromfunction(lambda x,y,z:x*y*z, (2, 2, 2)) but I ended up with an integer array even though x, y, and z are all floats. BTW, how do you unzip NumTut in windows? And is there a newer version? Thank you Howard You might try something like: import numarray xyz= lambda x,y,z:x*y*z xur = numarray.fromfunction(xyz, (6, 6, 3)) print xur Jul 18 '05 #3

 P: n/a Jean Brouwers wrote: You probably meant xyz = lambda x,y,z: float(x*y*z) or maybe even xyz = lambda x,y,z: float(x)*float(y)*float(z) /Jean Brouwers Jean, You are right, I overlooked SunX's wish to have a Float array. Unfortunately, numarray assumes that the source is based in the function indices, which delivers an Int array. Thus, your suggestion raises an exception. An alternative is given below. Colin W. import numarray xyz= lambda x,y,z: x*y*z # This raises an exception ##xur = numarray.fromfunction(xyz, (6, 4, 3)) ## File "C:\Python23\Lib\site-packages\numarray\numarraycore.py", line 715, in __float__ ## raise TypeError, "Only rank-0 numarray can be cast to floats." # This gets around that problem ind= numarray.indices(shape= (6, 4, 3), type= numarray.Float) xur= apply(xyz, ind) print xur In article <2f*******************@news20.bellglobal.com>, Colin J. Williams wrote:SunX wrote:I tried to initialize a float point array by:import numarrayxur = numarray.fromfunction(lambda x,y,z:x*y*z, (2, 2, 2))but I ended up with an integer array even though x, y, and z are all floats.BTW, how do you unzip NumTut in windows? And is there a newer version?Thank youHowardYou might try something like:import numarrayxyz= lambda x,y,z:x*y*zxur = numarray.fromfunction(xyz, (6, 6, 3))print xur Jul 18 '05 #4

This discussion thread is closed

Replies have been disabled for this discussion. 