我在 numpy 模块中有一个二维数组,如下所示:
data = array([[1,2,3],
[4,5,6],
[7,8,9]])
我想得到这个数组的一部分,它只包含元素的某些列。例如,我可能需要第 0 列和第 2 列:
data = [[1,3],
[4,6],
[7,9]]
最符合 Pythonic 的方法是什么? (请不要循环)
我认为这会起作用:
newArray = data[:,[0,2]]
但结果是:
TypeError: list indices must be integers, not tuple
最佳答案
错误明确地说:数据不是一个 numpy 数组,而是一个列表列表。
首先尝试将其转换为 numpy 数组:
numpy.array(data)[:,[0,2]]
关于python - 如何切片 2D Python 数组? : "TypeError: list indices must be integers, not tuple" 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3680262/