首页 > 解决方案 > 如何使用 np.where 查找数组中某个元素的索引值?

问题描述

这是我的示例数据:

# sample data
xdata = [3.33172, 3.33348, 3.33525, 3.33702, 3.33878, 3.34055, 3.34232, 
3.34408, 3.34585, 3.34762, 3.34938, 3.35115, 3.35292 , 3.35468, 3.35645, 
3.35822, 3.35998, 3.36175, 3.36352, 3.36529, 3.36705, 3.36882] 
ydata = [-0.00437834, -0.00486735, -0.0118371, -0.00582171, 0.00339488, 
-0.000369502, -0.000898799, -0.00797662, -0.00853566, -0.0123596, 
-0.0162318, -0.0103355, -0.00445416, 0.00137920, -0.00251916, -0.00968244, 
0.00260652, 0.00841350, 0.00445556, 0.00373271, 0.00621243, 0.00220983]

例如,我如何使用 np.where 来查找 3.35115 的索引值?

标签: arrayspython-3.xnumpy

解决方案


您需要首先将数据转换为numpy数组,以便检查==目标值的位置:

>>> np.where(np.array(xdata) == 3.35115)
# (array([11]),)

这表示索引 11xdata是 3.35115。


推荐阅读