在 Python Numpy 中选择一维数组中的元素
Selecting Elements in a one dimensional array in Python Numpy
我在 Pyhton Numpy 中创建了一个一维数组,如下所示:
import numpy as np
list1=[573, 554, 536, 535, 531, 523, 521, 519, 518, 518, 515, 514, 511, 506, 504, 501, 501, 500, 500, 499, 495, 494, 493, 491, 490, 489, 487, 485, 484, 482, 482, 481, 479, 478, 477, 471, 466, 453, 449, 448, 445, 439, 434, 432, 427, 423, 421, 413, 410, 409, 407, 394, 391, 388, 388, 386, 376, 376, 375, 368]
array_example = np.array(list1)
现在我想要 select 第 3、第 7 和第 9 个值,所以我得到值 536、521、518。
我试试:
array_example[2,6,8]
但出现以下错误:
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-4-6335bacdceb1> in <module>
----> 1 array_example[2,6,8]
IndexError: too many indices for array: array is 1-dimensional, but 3 were indexed
什么是正确的解决方案?有什么建议么?提早!
试试这个:
array_example[[2,6,8]]
它被称为“fancy indexing”。
我在 Pyhton Numpy 中创建了一个一维数组,如下所示:
import numpy as np
list1=[573, 554, 536, 535, 531, 523, 521, 519, 518, 518, 515, 514, 511, 506, 504, 501, 501, 500, 500, 499, 495, 494, 493, 491, 490, 489, 487, 485, 484, 482, 482, 481, 479, 478, 477, 471, 466, 453, 449, 448, 445, 439, 434, 432, 427, 423, 421, 413, 410, 409, 407, 394, 391, 388, 388, 386, 376, 376, 375, 368]
array_example = np.array(list1)
现在我想要 select 第 3、第 7 和第 9 个值,所以我得到值 536、521、518。
我试试:
array_example[2,6,8]
但出现以下错误:
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-4-6335bacdceb1> in <module>
----> 1 array_example[2,6,8]
IndexError: too many indices for array: array is 1-dimensional, but 3 were indexed
什么是正确的解决方案?有什么建议么?提早!
试试这个:
array_example[[2,6,8]]
它被称为“fancy indexing”。