如何按列访问一个NumPy数组
通过一个特定的Column索引访问一个基于NumPy的数组可以通过索引来实现。NumPy遵循Python中基于0的标准索引。
示例:
考虑数组:
1 13 6
9 4 7
19 16 2
输入 : print(NumPy_array_name[ :,2])
输出: [6 7 2]
解释: printing 3rd column
**在Python中访问一个二维Numpy数组的第i列 **
打印第一行和第二列。
For column : numpy_Array_name[ : , column ]
For row : numpy_Array_name[ row, : ]
import numpy as np
array = [[1, 13, 6], [9, 4, 7], [19, 16, 2]]
# defining array
arr = np.array(array)
print('printing 0th row')
print(arr[0, :])
print('printing 2nd column')
print(arr[:, 2])
# multiple columns or rows can be selected as well
print('selecting 0th and 1st row simultaneously')
print(arr[:,[0,1]])
输出 :
printing 0th row
[ 1 13 6]
printing 2nd column
[6 7 2]
selecting 0th and 1st row simultaneously
[[ 1 13]
[ 9 4]
[19 16]]
使用转置法访问Numpy数组的第i列
使用.T属性对给定的数组进行转置,并传递索引作为切片索引来打印数组。
import numpy as np
arr = np.array([[1, 13, 6], [9, 4, 7], [19, 16, 2]])
# Access the ith column of a 2D NumPy array
column_i = arr.T[2]
#printing the column
print(column_i)
输出:
[6 7 2]
使用列表理解法访问Numpy数组的第i列
在这里,我们访问行中的第i个元素,用列表理解法将其追加到一个列表中,并打印出col。
import numpy as np
arr = np.array([[1, 13, 6], [9, 4, 7], [19, 16, 2]])
# Access the ith column of a 2D NumPy array
col = [row[1] for row in arr]
# printing the column
print(col)
输出:
[13, 4, 16]
使用Ellipsis访问Numpy数组的第i列
传递第i个索引和省略号来打印返回的数组列。
For column : numpy_Array_name[ ... ,column]
For row : numpy_Array_name[row, ... ]
其中,...
表示在给定的行或列中的元素数量。
注意:这不是一个非常_实用的方法,但必须尽可能多地了解。
import numpy as np
# defining array
array = [[1, 13, 6], [9, 4, 7], [19, 16, 2]]
# converting to numpy array
arr = np.array(array)
print('selecting 0th column')
print(arr[..., 0])
print('selecting 1st row')
print(arr[1, ...])
输出:
selecting 0th column
[ 1 9 19]
selecting 1st row
[9 4 7]