Python 如何在两个numpy数组之间匹配索引并对它们进行排序?
我有两个女儿。它们包含笛卡尔坐标中的x,y值Python 如何在两个numpy数组之间匹配索引并对它们进行排序?,python,numpy,multidimensional-array,numpy-ndarray,Python,Numpy,Multidimensional Array,Numpy Ndarray,我有两个女儿。它们包含笛卡尔坐标中的x,y值 parent = [[ 10 234] [ 20 100] [ 30 100] [ 40 345] [ 5 100] [ -45 110]] 现在,假设基于一些随机算法,我找到了我的子元素,其中y值为100 我的子元素如下所示: child= [[ 20 100] [ 5 100] [ 30 100]] child= [[ 20 100] [ 30 100] [ 5 100]] 当我的算法改变顺序时,我想创建一个函数
parent =
[[ 10 234]
[ 20 100]
[ 30 100]
[ 40 345]
[ 5 100]
[ -45 110]]
现在,假设基于一些随机算法,我找到了我的子元素,其中y值为100
我的子元素如下所示:
child=
[[ 20 100]
[ 5 100]
[ 30 100]]
child=
[[ 20 100]
[ 30 100]
[ 5 100]]
当我的算法改变顺序时,我想创建一个函数,该函数将根据父元素的元素给我一个正确排序的子元素
所以我的孩子看起来像这样:
child=
[[ 20 100]
[ 5 100]
[ 30 100]]
child=
[[ 20 100]
[ 30 100]
[ 5 100]]
30100
位于5100
之前,因为30100
的索引值较低<代码>20100保持在相同的位置,因为它的索引值较低
我很难做到这一点。如果你能帮助我实现这一目标,我将非常高兴 您可以通过在整个父列表上循环并仅保留也在子列表中的父列表来实现这一点:
parent = [[10, 234],
[20, 100],
[30, 100],
[40, 345],
[5, 100],
[-45, 110]]
child = [[20, 100],
[5, 100],
[30, 100]]
print([i for i in parent if i in child])
>>>[[20, 100],
[30, 100],
[5, 100]]