वाक्य रचना है: अपने Question-- में
M[row_index,1:] # selects all but 1st col from row given by 'row_index'
डब्ल्यू/आर/दूसरे परिदृश्य टी का चयन गैर सन्निकट स्तंभ:
M[row_index,[0,2]] # selects 1st & 3rd cols from row given by 'row_index'
में छोटे जटिलता आपका प्रश्न यह है कि आप row_index के लिए एक स्ट्रिंग का उपयोग करना चाहते हैं, इसलिए स्ट्रिंग को निकालना आवश्यक है (ताकि आप फ्लोट्स की 2 डी न्यूमपी सरणी बना सकें), उन्हें संख्यात्मक के साथ बदलें पंक्ति सूचियों और फिर संख्यात्मक पंक्ति सूचकों साथ तार मैप करने के लिए एक लुक-अप तालिका बनाने:
>>> import numpy as NP
>>> # create a look-up table so you can remove the strings from your python nested list,
>>> # which will allow you to represent your data as a 2D NumPy array with dtype=float
>>> keys
['foo', 'bar', 'noo', 'tar', 'boo']
>>> values # 1D index array comprised of one float value for each unique string in 'keys'
array([0., 1., 2., 3., 4.])
>>> LuT = dict(zip(keys, values))
>>> # add an index to data by inserting 'values' array as first column of the data matrix
>>> A = NP.hstack((vals, A))
>>> A
NP.array([ [ 0., .567, .611],
[ 1., .469, .479],
[ 2., .22, .269],
[ 3., .48, .508],
[ 4., .324, .324] ])
>>> # so now to look up an item, by 'key':
>>> # write a small function to perform the look-ups:
>>> def select_row(key):
return A[LuT[key],1:]
>>> select_row('foo')
array([ 0.567, 0.611])
>>> select_row('noo')
array([ 0.22 , 0.269])
अपने प्रश्न में दूसरे परिदृश्य: क्या हुआ अगर सूचकांक कॉलम परिवर्तन?
>>> # e.g., move index to column 1 (as in your Q)
>>> A = NP.roll(A, 1, axis=1)
>>> A
array([[ 0.611, 1. , 0.567],
[ 0.479, 2. , 0.469],
[ 0.269, 3. , 0.22 ],
[ 0.508, 4. , 0.48 ],
[ 0.324, 5. , 0.324]])
>>> # the original function is changed slightly, to select non-adjacent columns:
>>> def select_row2(key):
return A[LuT[key],[0,2]]
>>> select_row2('foo')
array([ 0.611, 0.567])
"foo", "bar", आदि क्या हैं? तार? या सिर्फ अन्य नंबरों के लिए प्लेसहोल्डर्स? –
आप एक numpy सरणी कैसे बना सकते हैं जिसमें * दोनों * फ्लोट्स और तार शामिल हैं? डेटाबेस से – talonmies
@tal। – Merlin