NumPy 1.14 - numpy.ma.outer()

numpy.ma.outer




numpy

numpy.ma.outer

numpy.ma.outer(a, b) [source]

दो वैक्टर के बाहरी उत्पाद की गणना करें।

दो वैक्टर, a = [a0, a1, ..., aM] और b = [b0, b1, ..., bN] , बाहरी उत्पाद [R9797] है:

[[a0*b0  a0*b1 ... a0*bN ]
 [a1*b0    .
 [ ...          .
 [aM*b0            aM*bN ]]
पैरामीटर:

a : (M,) array_like

पहला इनपुट वेक्टर। यदि पहले से ही आयामी नहीं है तो इनपुट को समतल किया जाता है।

b : (N,) array_like

दूसरा इनपुट वेक्टर। यदि पहले से ही आयामी नहीं है तो इनपुट को समतल किया जाता है।

बाहर : (एम, एन) ndarray, वैकल्पिक

एक स्थान जहां परिणाम संग्रहीत किया जाता है

संस्करण 1.9.0 में नया।

यह दिखाता है:

आउट : (एम, एन) ndarray

out[i, j] = a[i] * b[j]

यह भी देखें

inner

einsum
einsum('i,j->ij', a.ravel(), b.ravel()) समतुल्य है।
ufunc.outer
एन आयामों और अन्य कार्यों के लिए एक सामान्यीकरण। np.multiply.outer(a.ravel(), b.ravel()) समतुल्य है।

संदर्भ

[R9797] ( 1 , 2 ) : जीएच गोलूब और सीएफ वैन लोन, मैट्रिक्स कंप्यूटेशंस , तीसरा संस्करण।, बाल्टीमोर, एमडी, जॉन्स हॉपकिन्स यूनिवर्सिटी प्रेस, 1996, स्नातकोत्तर। 8।

उदाहरण

मैंडलब्रॉट सेट की गणना के लिए एक ( बहुत मोटे) ग्रिड बनाएं:

>>> rl = np.outer(np.ones((5,)), np.linspace(-2, 2, 5))
>>> rl
array([[-2., -1.,  0.,  1.,  2.],
       [-2., -1.,  0.,  1.,  2.],
       [-2., -1.,  0.,  1.,  2.],
       [-2., -1.,  0.,  1.,  2.],
       [-2., -1.,  0.,  1.,  2.]])
>>> im = np.outer(1j*np.linspace(2, -2, 5), np.ones((5,)))
>>> im
array([[ 0.+2.j,  0.+2.j,  0.+2.j,  0.+2.j,  0.+2.j],
       [ 0.+1.j,  0.+1.j,  0.+1.j,  0.+1.j,  0.+1.j],
       [ 0.+0.j,  0.+0.j,  0.+0.j,  0.+0.j,  0.+0.j],
       [ 0.-1.j,  0.-1.j,  0.-1.j,  0.-1.j,  0.-1.j],
       [ 0.-2.j,  0.-2.j,  0.-2.j,  0.-2.j,  0.-2.j]])
>>> grid = rl + im
>>> grid
array([[-2.+2.j, -1.+2.j,  0.+2.j,  1.+2.j,  2.+2.j],
       [-2.+1.j, -1.+1.j,  0.+1.j,  1.+1.j,  2.+1.j],
       [-2.+0.j, -1.+0.j,  0.+0.j,  1.+0.j,  2.+0.j],
       [-2.-1.j, -1.-1.j,  0.-1.j,  1.-1.j,  2.-1.j],
       [-2.-2.j, -1.-2.j,  0.-2.j,  1.-2.j,  2.-2.j]])

अक्षरों के "वेक्टर" का उपयोग कर एक उदाहरण:

>>> x = np.array(['a', 'b', 'c'], dtype=object)
>>> np.outer(x, [1, 2, 3])
array([[a, aa, aaa],
       [b, bb, bbb],
       [c, cc, ccc]], dtype=object)