【问题标题】:Get subset of array and list from list of index从索引列表中获取数组和列表的子集
【发布时间】:2017-03-12 17:20:22
【问题描述】:

我有一个numpy数组X和一个python列表y,它们的元素对应。我有一个部分索引列表,我想用它来形成另一个数组 refinedXrefinedY.

例如,如果部分列表包含0,1X=[[1,2],[3,4],[5,6]]y=[1,2,1],我想要refiendX = [[1,2], [3,4]]refinedY = [1,2].

如何在 python 中做到这一点?

注意:实际变量 X 是一个 (2000,5000) 矩阵,部分列表将包含大约 500 个项目。

【问题讨论】:

    标签: python list numpy


    【解决方案1】:

    我已经编写了一些代码来完成这项工作。

    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]
    

    每次调用某个值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-29
      相关资源
      最近更新 更多