鉴于此代码:
s = pd.Series([1,2,3], index=['C','B','A'])
s.sort_index(inplace=True)
s
现在不应该是这样的:A 3
B 2
C 1
dtype: int64
当我运行它时,
s
保持不变。也许我对 inplace
参数应该做什么感到困惑。我认为它应该更改调用该方法的系列。为了记录,这确实返回排序的系列,但无论您是否将
inplace
设置为 True,它都会返回。 最佳答案
你的期望确实是正确的。然而,这在 0.17 之前还没有实现/0.17 中的一个错误,这个关键字被忽略而不是引发错误(像以前一样)。但是将在即将发布的 0.17.1 版本中发布修复程序。
见 https://github.com/pydata/pandas/pull/11422
所以现在,最简单的就是在没有 inplace
的情况下使用它:
In [4]: s = s.sort_index()
In [5]: s
Out[5]:
A 3
B 2
C 1
dtype: int64
关于python - 对于 Pandas 系列,不应该 s.sort_index(inplace=True) 改变 s 吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33617439/