【发布时间】:2013-06-26 14:06:30
【问题描述】:
我遇到了一些带有切片表示法的 python 代码,但我无法弄清楚。 它看起来像切片符号,但使用逗号和列表:
list[:, [1, 2, 3]]
这种语法有效吗?如果有,它有什么作用?
edit 看起来像是一个 2D numpy 数组
【问题讨论】:
-
您确定
list是一个列表吗?它可能是一个以不寻常的方式覆盖__getitem__的类的实例。 -
你试过type(list)吗?可以是 numpy 数组或 pandas 数据框。
-
@mattexx,我没有完整的代码,这在 numpy 和 pandas 中有什么作用?
-
Numpy 数组和 pandas 数据帧使用二维数组,很像 matlab 和 r。第一个参数通常代表一个行切片,而第二个参数代表一个列切片。所以 list[:,:3] 将是所有行,前三列。我不确定是否支持您在问题中使用的确切符号。
-
@mattexx:为了不让 OP 感到困惑,强调 numpy 数组与其他一些数据结构的本质上不同,它可能不是二维对象。他们是 n-D。