我来自R背景,无法在熊猫中切片某些列。
假设我正在尝试获取索引为0、3、5至20和25的列。我认为访问我想要的方法是:
df.iloc[:, [0,3,5:20,25]]
但是在代码:
行中的5:20
存在语法错误。有没有一种方法可以生成5到20的数字序列,而无需键入每个数字?
您可以使用numpy.r_[...]
:
df.iloc[:, np.r_[0,3,5:21,25]]
注意,切片是5:21
,因为numpy使用Python的切片约定(不包括上限),而熊猫同时包含上限和下限。