Numpy-broadcast

提供:Dev Guides
移動先:案内検索

numpy.broadcast

前に見たように、NumPyにはブロードキャストのサポートが組み込まれています。 この関数は、ブロードキャストメカニズムを模倣します。 ある配列を他の配列に対してブロードキャストした結果をカプセル化するオブジェクトを返します。

この関数は、入力パラメーターとして2つの配列を取ります。 次の例は、その使用法を示しています。

import numpy as np
x = np.array([[y = np.array([4, 5, 6])

# tobroadcast x against y
b = np.broadcast(x,y)
# it has an iterator property, a tuple of iterators along self's "components."

print 'Broadcast x against y:'
r,c = b.iters
print r.next(), c.next()
print r.next(), c.next()
print '\n'
# shape attribute returns the shape of broadcast object

print 'The shape of the broadcast object:'
print b.shape
print '\n'
# to add x and y manually using broadcast
b = np.broadcast(x,y)
c = np.empty(b.shape)

print 'Add x and y manually using broadcast:'
print c.shape
print '\n'
c.flat = [u + v for (u,v) in b]

print 'After applying the flat function:'
print c
print '\n'
# same result obtained by NumPy's built-in broadcasting support

print 'The summation of x and y:'
print x + y

その出力は次のとおりです-

Broadcast x against y:
1 4
1 5

The shape of the broadcast object:
(3, 3)

Add x and y manually using broadcast:
(3, 3)

After applying the flat function:
[[The summation of x and y:
[[