如何使用np.where查找数组中某个元素的索引值?

时间:2018-11-21 21:50:56

标签: arrays python-3.x numpy

这是我的示例数据:

# 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?

1 个答案:

答案 0 :(得分:0)

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

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

这表示xdata的索引11是3.35115。