summaryrefslogtreecommitdiff
path: root/numpy/lib/function_base.py
diff options
context:
space:
mode:
authorTravis Oliphant <oliphant@enthought.com>2007-10-19 19:31:16 +0000
committerTravis Oliphant <oliphant@enthought.com>2007-10-19 19:31:16 +0000
commit440a5f9ad84f91460d6ee18aa7fdccac03c72625 (patch)
tree312a6fdcaa06e951d76db5356be45a5cca61ea10 /numpy/lib/function_base.py
parente052f245f10a3f13e33f1e6fc2d15f22c03b377f (diff)
downloadnumpy-440a5f9ad84f91460d6ee18aa7fdccac03c72625.tar.gz
Avoid extra copy if otype is object on output.
Diffstat (limited to 'numpy/lib/function_base.py')
-rw-r--r--numpy/lib/function_base.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py
index d083ad5e6..2d7bc6189 100644
--- a/numpy/lib/function_base.py
+++ b/numpy/lib/function_base.py
@@ -950,12 +950,12 @@ class vectorize(object):
self.ufunc = frompyfunc(self.thefunc, nargs, self.nout)
# Convert to object arrays first
- newargs = [asanyarray(arg,dtype=object) for arg in args]
+ newargs = [array(arg,copy=False,subok=True,dtype=object) for arg in args]
if self.nout == 1:
_res = array(self.ufunc(*newargs),copy=False,
- subok=True).astype(self.otypes[0])
+ subok=True,dtype=self.otypes[0])
else:
- _res = tuple([array(x,copy=False,subok=True).astype(c) \
+ _res = tuple([array(x,copy=False,subok=True,dtype=c) \
for x, c in zip(self.ufunc(*newargs), self.otypes)])
return _res