我有一个系列数据类型,是通过从Pandas数据框中减去两个列而生成的。
我想从该系列中删除第一个元素,该元素在R中将为x[-1]
。我可以使它在np数组类中工作,但系列类不起作用。
s.iloc[1:]
如果您更喜欢使用drop
而不是slice
,则可以使用内置的drop
方法:
s.drop(s.index[0])
要移除多个项目,您需要包含一个索引
位置的列表
:
s.drop(s.index[[0, 2, 4]])
或者一个切片
:
s.drop(s.index[1: 4])
drop
是一个非常好的解决方案。我已经为你的第一个答案点赞了,但我认为这个编辑甚至更好。 - johnchasePython没有像R那样切出位置的方法。如果你只需要删除第一个或最后一个元素,前面发布的解决方案:s.iloc[1:]
可能是最好的选择。如果你需要删除多个元素或者序列中间的元素,可以使用以下方法:
In [29]: x = pd.Series(np.random.randn(10))
In [34]: x[~x.index.isin([0, 3, 4])]
Out[34]: 1 0.884089
2 0.921271
5 -0.847967
6 -0.088892
7 -0.765241
8 -0.084489
9 -0.581152
dtype: float64