Python 从索引列表中获取数组和列表的子集
我有一个numpy数组Python 从索引列表中获取数组和列表的子集,python,list,numpy,Python,List,Numpy,我有一个numpy数组X和一个python列表y,它们的元素对应。我有一个索引的部分列表,我想用它来形成另一个数组refinedX和refinedY. 例如,如果部分列表包含0,1和X=[[1,2],[3,4],[5,6]和y=[1,2,1],我想要refiendX=[1,2],[3,4]和refineddy=[1,2]。 如何在python中实现这一点 注意:实际变量X是一个(20005000)矩阵,部分列表将包含大约500项。我已经编写了一些代码来完成这项工作 X=[[1,2],[3,4],
X
和一个python列表y
,它们的元素对应。我有一个索引的部分列表,我想用它来形成另一个数组refinedX
和refinedY.
例如,如果部分列表包含0,1
和X=[[1,2],[3,4],[5,6]
和y=[1,2,1]
,我想要refiendX=[1,2],[3,4]
和refineddy=[1,2]。
如何在python中实现这一点
注意:实际变量X是一个(20005000)矩阵,部分列表将包含大约500项。我已经编写了一些代码来完成这项工作
X=[[1,2],[3,4],[5,6]]
Y=[1,2,1]
indexes = [1,2]
refinedX = [X[i-1] for i in indexes]
refinedY = [Y[i-1] for i in indexes]
如果您将定期更新索引,那么这可能会占用大量资源,因此在这种情况下,我建议您改用它:
X[indexes[i]-1] #instead of refinedX[i]
对于每次调用某个值。我已经编写了一些代码来完成这项工作
X=[[1,2],[3,4],[5,6]]
Y=[1,2,1]
indexes = [1,2]
refinedX = [X[i-1] for i in indexes]
refinedY = [Y[i-1] for i in indexes]
如果您将定期更新索引,那么这可能会占用大量资源,因此在这种情况下,我建议您改用它:
X[indexes[i]-1] #instead of refinedX[i]
每次调用某个值时