我有一个numpy数组X
和一个元素对应的python列表y
。我有一个部分索引列表,我想用它来形成另一个数组refinedX
和refinedY.
例如,如果部分列表包含0,1
和X=[[1,2],[3,4],[5,6]]
以及y=[1,2,1]
,我希望refiendX = [[1,2], [3,4]]
和refinedY = [1,2].
我怎么能在python中做到这一点?
注意:实际变量X是(2000,5000)矩阵,部分列表将包含大约500个项目。
答案 0 :(得分:0)
我已经写了一些代码来完成这项工作。
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]
每次调用某个值时都会。