擅长:python、mysql、java
<h2>使用广播</h2>
<p>vstack、tile和repeat都很棒,但广播速度可以快几个数量级。。。</p>
<pre><code>import numpy as np
from time import time
t = time()
for _ in xrange(10000):
a = np.array([4,6,6,1])
b = np.vstack((a,)*100)
print time()-t
t = time()
for _ in xrange(10000):
a = np.array([4,6,6,1])
b = np.tile(a,(3,1))
print time()-t
t = time()
for _ in xrange(10000):
a = np.array([4,6,6,1])
b = np.empty([100,a.shape[0]])
b[:] = a
print time()-t
</code></pre>
<p>印刷品:</p>
<pre><code>2.76399993896
0.140000104904
0.0490000247955
</code></pre>