【发布时间】:2021-05-01 16:07:23
【问题描述】:
我正在尝试编写一个函数,它为我提供list_2 或list_3crosses list_ 的索引。因此,如果 numpy 代码中有任何交点,它会给我交点。我想按顺序获得十字架,因此必须对索引列表进行格式化,以便按照list_2 cross, list_3 cross , list_2 cross 或list_3 cross, list_2 cross , list_3 cross 等的顺序给我一个十字架。所以如果发生十字架,它必须等待其他数组值要穿过list,然后才能通过。尽管我尝试过使用numpy.where()function 等,但我不知道如何解决这个问题,我也在使用 pandas 模块,所以如果它有一个有效的函数,我也可以使用它。
变量:
list_ = np.array([9887.89 9902.99 9902.99 9910.23 9920.79 9911.34 9920.01 9927.51 9932.3
9932.33 9928.87 9929.22 9929.22 9935.24 9935.24 9935.26 9935.26 9935.68
9935.68 9940.5 ])
list_2 = np.array([9935.26 9935.26 9935.68 9935.68 9940.5 9925.19 9925.19 9929.62 9929.65
9929.93 9932.55 9936.81 9936.84 9937.26 9932.55 9932.55 9932.55 9932.6
9932.6 9932.6])
list_3_ = np.array([9928.87 9929.22 9929.22 9935.24 9935.24 9935.26 9935.26 9935.68 9935.68
9940.5 9925.19 9925.19 9929.62 9929.65 9929.93 9932.55 9936.81 9936.84
9937.26 9932.55])
情节:
预期输出:
List_2 cross at 5, List_3 cross at 10, List_2 cross at 14, List_3 cross at 15, List_2 cross at 18, List_3 cross at 19
【问题讨论】:
-
这就是你要找的(
return_indices=True)吗? numpy.org/doc/stable/reference/generated/numpy.intersect1d.html -
列表的长度是否相同?
-
您能否通过显示示例数据的返回值来说明您的意思
-
是的,它们的大小相同,我将通过提供图形值来更新它
-
@Stuart 希望解释更好,现在我已经更新了。我想我可以使用
intersect1d()函数,但我真的不知道如何格式化它。
标签: python list function numpy intersection