《Python数据分析与挖掘实战》第三章书中代码
p = data.boxplot() #画箱线图,直接使用DataFrame的方法
x = p['fliers'][0].get_xdata() # 'flies'即为异常值的标签
y = p['fliers'][0].get_ydata()
报错:
x = p['fliers'][0].get_xdata()
TypeError: 'AxesSubplot' object is not subscriptable
查看pandas文档贴上原文和中文翻译
return_type : {‘axes’, ‘dict’, ‘both’} or None, default ‘axes’ The
kind of object to return. The default is axes.‘axes’ returns the matplotlib axes the boxplot is drawn on.
‘dict’ returns a dictionary whose values are the matplotlib Lines of
the boxplot.‘both’ returns a namedtuple with the axes and dict.
return_type : {‘axes’,‘dict’,‘both’}或None,默认’axes’
要返回的那种对象。默认是axes。
'axes’返回绘制boxplot的matplotlib轴。
'dict’返回一个字典,其值是boxplot的matplotlib行。
'both’返回一个带有轴和dict的namedtuple。
将三个参数都试一遍
-
return_type=‘axes’,返回的是
AxesSubplot(0.125,0.11;0.775x0.77)
,应该就是箱图的轴对象 - return_type=“dict”,返回的是
{'whiskers': [
,
],
'caps': [
,
],
'boxes': [
],
'medians': [
],
'fliers': [
],
'means': []}
字典里面就是组成箱图的各个元素,其中
fliers
表示离散点,通过
p['fliers'][0]
获取点坐标
- return_type=“both”,返回的就是两者结合
Boxplot(ax=
,
lines={'whiskers': [
,
],
'caps': [
,
],
'boxes': [
],
'medians': [
],
'fliers': [
],
'means': []})