gpt4 book ai didi

python-3.x - Pandas 数据帧 : set_index with inplace=True returns a NoneType, 为什么?

转载 作者:行者123 更新时间:2023-12-04 17:07:25 25 4
gpt4 key购买 nike

如果我使用“inplace=True”(在 the documentation 之后)重置我的 Pandas 数据帧的索引,它会返回一个类“NoneType”。如果我用“inplace=False”重置索引,它会返回带有新索引的数据帧。为什么?

print(type(testDataframe))
print(testDataframe.head())

返回:
<class 'pandas.core.frame.DataFrame'>
ALandbouwBosbouwEnVisserij AantalInkomensontvangers AantalInwoners \
0 73780.0 None 16979120
1 290.0 None 25243
2 20.0 None 3555

Set_index 返回一个新索引:
testDataframe = testDataframe.set_index(['Codering'])
print(type(testDataframe))
print(testDataframe.head())

返回
<class 'pandas.core.frame.DataFrame'>
ALandbouwBosbouwEnVisserij AantalInkomensontvangers \
Codering
NL00 73780.0 None
GM1680 290.0 None
WK168000 20.0 None
BU16800000 15.0 None

但同样的 set_index 与“inplace=True”:
testDataframe = testDataframe.set_index(['Codering'], inplace=True)
print(type(testDataframe))
print(testDataframe.head())

返回
<class 'NoneType'>
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-50-0d6304ebaae1> in <module>()

版本信息:
python: 3.4.4.final.0
python-bits: 64
pandas: 0.18.1
numpy: 1.11.1
IPython: 5.2.2

最佳答案

好的,现在我明白了,感谢您的评论!

所以 inplace=True 应该返回 None 在原始对象中进行更改。似乎在再次列出数据框时,没有任何变化。

但我当然不应该有 分配返回值 到数据帧,即

testDataframe = testDataframe.set_index(['Codering'], inplace=True)

应该只是
testDataframe.set_index(['Codering'], inplace=True)


testDataframe = testDataframe.set_index(['Codering'], inplace=False)

否则就地索引更改(无)的返回值是数据帧的新内容,这当然不是预期的。

我相信这对很多人来说都是显而易见的,现在对我来说也是如此,但这并非没有你的帮助,谢谢!!!

关于python-3.x - Pandas 数据帧 : set_index with inplace=True returns a NoneType, 为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42854598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com