Python 在Numpy中访问多维数组的数据
Numpy是用于科学和数学计算的Python库。Numpy提供了处理一维数组和多维数组的功能。多维数组由多个行和列组成。Numpy提供了多个内置函数来操作多维数组。在本文中,我们将探讨如何在Python Numpy中访问多维数组的数据。
在Python Numpy中创建多维数组
要在Python中创建一个多维数组,我们需要将一个列表的列表传递给numpy.array()方法。列表中包含多个子列表,每个子列表代表多维数组的一行。
语法
numpy.array(list)
numpy.array()函数将传递给它的列表转换为多维数组。传递列表中的多个列表将作为多维数组的行。
示例
让我们使用numpy.array()函数创建一个多维数组,并在python中打印转换后的多维数组。我们将传递一个包含3个列表的列表给numpy.array()函数,这将创建一个3*3的多维数组。
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr)
输出
[[1 2 3]
[4 5 6]
[7 8 9]]
使用索引属性访问单维度和多维度数组上的数据
在访问多维度数组上的数据之前,我们需要知道如何访问单维度数组上的数据。我们可以使用列表中元素的索引来访问单维度数组上的数据。
语法
arr[index_of_element]
arr[]属性在传递有效索引时,返回数组中特定索引处的元素。
示例
如果我们想要访问一维数组的第三个元素,我们需要将2作为索引传递给arr[]属性,因为数组元素的索引从0开始。
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr[2])
输出
3
类似地,为了访问多维数组中的数据,我们需要在arr[]
属性中指定元素的行索引和列索引。为了访问3*3多维数组的第二行第三列的数据,我们需要将行索引和列索引分别设置为[1,2]。
语法
arr[row_index,column_index]
示例
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr[1, 2])
输出
6
使用每个维度的索引范围来访问多维数据
要访问多维数组中的多个维度的数据,即要访问多维数组的子集,我们必须为数组的每个维度指定索引范围。
示例
我们可以访问3×3数组的前两行和前两列,即数组的子集。我们需要使用分号(:)符号来指定前两行和前两列的索引范围。由于第一行索引从0开始,第二行索引为1,所以当我们访问表的前两行或列时,需要指定0:2。
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
subset = arr[0:2, 0:2]
print(subset)
输出
[[1 2]
[4 5]]
示例
我们可以使用冒号(分号符号)来访问数组中沿特定方向的所有元素。我们可以访问第二行的所有元素。
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
row = arr[1, :]
print(row)
输出
[4 5 6]
结论
在本文中,我们讨论了如何使用 Python 中的列表的索引属性来访问多维度数据。可以使用列表元素的索引来访问单维度和多维度列表中的元素,在列表的行和列之间通过元素的索引访问数据。要访问多维度数据,我们使用行和列上的索引范围。