如何用NumPy根据最小x值获取对应的y值?
获取数组中最小x值对应的所有y值
解决方案步骤:
- 提取数组中所有x值,找到最小值
- 通过布尔索引筛选出x等于最小值的所有行,再提取对应的y值
代码实现:
import numpy as np arr = np.array([[1, 1],[1, 2],[3, 0],[4, 7],[3, 1],[4, 6]]) # 方法1:直接提取x列并取最小值 min_x = arr[:, 0].min() # 筛选对应y值 y_values = arr[arr[:, 0] == min_x, 1] print(y_values) # 输出: [1 2] # 方法2:复用你已有的np.amin结果 min_vals = np.amin(arr, axis=0) min_x = min_vals[0] y_values = arr[arr[:, 0] == min_x, 1] print(y_values) # 输出: [1 2]
代码说明:
arr[:, 0]:提取数组所有行的第一列(即x值列)arr[:, 0] == min_x:生成布尔数组,标记哪些行的x等于最小值arr[布尔数组, 1]:利用布尔索引筛选符合条件的行,再提取第二列(即y值列)
内容的提问来源于stack exchange,提问作者dummy
相关产品推荐
相关产品推荐

