猿问

为什么 pd.reset_index 将 Series 转换为 DataFrame

我有以下数据:

接下来我执行:

https://img1.sycdn.imooc.com/658a7c830001c7c004640552.jpg

让我困惑的是reset_index()将Series更改为DataFrame。这是为什么?看到pandas文档后,我预计会出现错误,因为reset_index仅适用于DataFrame:

https://img1.sycdn.imooc.com/658a7c8e00017cb406540152.jpg

预先感谢您为我解决了这个问题。



慕工程0101907
浏览 130回答 3
3回答

心有法竹

您正在使用Series.reset_index。所以要检查的正确页面是:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.reset_index.html

德玛西亚99

根据Series Docs:Series 是一个一维标记数组,能够保存任何类型的数据。当您执行 a 时reset_index(),会向其中添加另一列,因此它不再是one-dimensionalSeries,而是变成了dataframe。从reset_index docs:生成一个新的 DataFrame 或 Series 并重置索引。希望这能消除你的疑虑。

慕姐4208626

帮助Series.reset_index是reset_index(self, level=None, drop=False, name=None, inplace=False)    Generate a new DataFrame or Series with the index reset.        This is useful when the index needs to be treated as a column, or    when the index is meaningless and needs to be reset to the default    before another operation.    ...文档drop是    drop : bool, default False        Just reset the index, without inserting it as a column in        the new DataFrame.默认情况下,该系列将转换为具有新索引的数据帧。但是使用 时drop=False,会返回带有重置索引的系列。这对我来说似乎是倒退的 - 默认重置系列索引将是“reset_index”恕我直言的更自然的结果。
随时随地看视频慕课网APP

相关分类

Python
我要回答