Numeric, vectorization
David Isaac
aisaac0 at verizon.net
Mon May 1 12:32:24 EDT 2006
"RonnyM" <ronnyma at math.uio.no> wrote in message
news:1146500254.216411.166700 at u72g2000cwu.googlegroups.com...
> e.g. y = [ 1, 2, 3, 4, 5, 6 ,7 ,8, 9 ]
> ybar = [ 1, (1 + 3)*.5,(2 + 4)*.5,(3 + 5)*.5,..., (n-1 + n+1)*.5 ], n =
> 1,...len(y) -1
> How do I make a vectorized version of this, I will prefer not to
> utilize Map or similar functions, but numeric instead.
You treat the first element asymmetrically, so that does not vectorize.
The rest does:
>>> import numpy as N
>>> y=N.arange(1,10)
>>> slice1 = slice(0,-2,1)
>>> slice2 = slice(2,None,1)
>>> ybar = 0.5*(y[slice1]+y[slice2])
>>> ybar
array([ 2., 3., 4., 5., 6., 7., 8.])
hth,
Alan Isaac
More information about the Python-list
mailing list