假设你有一个二维数组
arr
,可以使用NumPy库中的argmin()函数来找到最小值所在的列索引,然后通过索引取出该列的数据。以下是示例代码:
import numpy as np
arr = np.array([[1, 2, 3], [4, 0, 6], [7, 8, 9]])
# 找到最小值所在的列索引
min_index = np.argmin(arr, axis=0)[0]
# 取出该列的数据
min_col = arr[:, min_index]
print(min_col)
输出:
[1 4 7]
解释:这个例子中,最小值为0,在第二列。argmin()函数返回包含每列最小值索引的一维数组,所以我们需要访问其第一个元素(即第二列最小值的索引)。最后,我们使用切片操作选取arr
中该列的数据并打印输出。
更详细的回复
要输出当前数组最小值所在的列,需要遍历数组的每一列,找到最小值所在的索引并输出该列的数据。以下是一个使用Python实现的示例代码:
import numpy as np
# 生成一个5x5的随机数组
arr = np.random.rand(5, 5)
# 找到最小值所在的列
min_index = np.argmin(arr, axis=0)[0]
# 输出最小值所在列的数据
print(arr[:, min_index])
首先,我们使用NumPy库创建了一个5x5的随机数组。然后,使用np.argmin()
函数找到数组中最小值所在的列的索引。注意,axis=0
参数表示沿着列方向比较,返回值是包含每列最小值索引的一维数组。
接下来,我们使用该索引选择并输出对应的列数据。可以使用切片操作[:, min_index]
获取整个数组的第min_index
列数据,也可以使用循环依次访问每一行的第min_index
个元素进行输出。