您的位置:首页 > 文旅 > 美景 > 百度网盟推广官方网站_中国兼职设计师网_公司企业网站建设方案_搜索引擎网站排名优化方案

百度网盟推广官方网站_中国兼职设计师网_公司企业网站建设方案_搜索引擎网站排名优化方案

2024/12/23 7:20:34 来源:https://blog.csdn.net/qq_38463737/article/details/144313656  浏览:    关键词:百度网盟推广官方网站_中国兼职设计师网_公司企业网站建设方案_搜索引擎网站排名优化方案
百度网盟推广官方网站_中国兼职设计师网_公司企业网站建设方案_搜索引擎网站排名优化方案

【bug】python pandas KeyError: 'index’

环境

pandas            2.2.3

问题详情

代码

import pandas as pd# 创建一个示例 DataFrame
data = {'id': [1, 2, 3],'name': ['Alice', 'Bob', 'Charlie'],'age': [100, 200, 300]
}
df = pd.DataFrame(data)
# 这里的reset_index()用于将 Series 的索引转换为 DataFrame 的列
a = df["age"].value_counts().reset_index()  
print(a)
print(a["index"][0])

完整bug

Traceback (most recent call last):File "t1.py", line 15, in <module>print(a["index"][0])File "C:\ProgramData\miniconda3\envs\playwright310\lib\site-packages\pandas\core\frame.py", line 4102, in __getitem__indexer = self.columns.get_loc(key)File "C:\ProgramData\miniconda3\envs\playwright310\lib\site-packages\pandas\core\indexes\base.py", line 3812, in get_loc   raise KeyError(key) from err
KeyError: 'index'

原因:这是由于 pandas 2.xreset_index()得到的结果和pandas 1.x 不一样导致的。

对于 df["age"].value_counts().reset_index()
pandas 1.5.0 结果
"""index  age
0    100    1
1    200    1
2    300    1
"""pandas 2.2.3 结果
"""age  count
0  100      1
1  200      1
2  300      1
"""

解决方法

方法1:将a["index"][0] 改为 a["age"][0]

.

方法2:将pandas降级为1.x版本,如我1.5.0版本没有弹出该bug。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com