KeyError:尝试使用熊猫构建箱线图时项目不在索引中
Posted
技术标签:
【中文标题】KeyError:尝试使用熊猫构建箱线图时项目不在索引中【英文标题】:KeyError: item not in index while trying to build boxplot with pandas 【发布时间】:2018-09-07 16:57:15 【问题描述】:我正在尝试从一个简单的数据框构建一个箱线图。我取一个多列,只取我需要的两列:
mydata = data[['addr_state','loan_amnt']].dropna().copy()
mydata['loan_amnt'] = mydata['loan_amnt'].astype(float)
mydata[:5]
addr_state loan_amnt
0 AZ 5,000.00
1 GA 2,500.00
2 IL 2,400.00
3 CA 10,000.00
4 OR 3,000.00
mydata.columns
Index(['addr_state', 'loan_amnt'], dtype='object')
基本上,它是一堆状态量记录,我正在尝试为它构建蜡烛:
mydata.boxplot(column='addr_state')
KeyError: "['addr_state'] not in index"
我尝试了 set_index() 和 rebuild_index() 但似乎都没有修复它。
【问题讨论】:
【参考方案1】:根据docs,column 参数应该是运行箱线图的数值(输入到groupby
而不是它的参数),by 参数应该是分组变量:
mydata.boxplot(column='loan_amnt', by='addr_state')
用随机数据演示:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(1212)
mydata = pd.DataFrame('loan_amnt': np.random.randn(50)*100,
'tool': ["".join(np.random.choice(['pandas', 'r', 'julia',
'sas', 'stata', 'spss'],1)) for _ in range(50)])
mydata.boxplot(column='loan_amnt', by='tool')
【讨论】:
以上是关于KeyError:尝试使用熊猫构建箱线图时项目不在索引中的主要内容,如果未能解决你的问题,请参考以下文章