我们怎样才能得到一个情节箱线图背后的不同统计数据?
Posted
技术标签:
【中文标题】我们怎样才能得到一个情节箱线图背后的不同统计数据?【英文标题】:How can we get different stats behind a plotly boxplot? 【发布时间】:2021-08-31 20:10:37 【问题描述】:我想得到一个情节箱线图背后的确切统计数据。
这似乎让我非常接近,但我错过了第一季度和第三季度。
stats = df.groupby(['Market'])['Revenue'].describe()
stats
Q1 和 Q3 似乎与我看到的不同。
import plotly.express as px
fig = px.box(df, x="Market", y="Revenue", color="Market")
fig.update_traces(quartilemethod="exclusive")
fig.update_layout(showlegend=False)
fig.show()
这与“排他性”或“包容性”论点有关,但我不知道有什么区别。此外,df.groupby(['Market'])['Revenue'].describe()
的默认值似乎与 'inclusive' 参数相匹配。
Q1:“独家”和“包容”有什么区别?
Q2:df.groupby(['Market'])['Revenue'].describe()
是否有“排他性”参数?
【问题讨论】:
如果您的分数很少,您会看到差异。似乎在这里解释:plotly.com/r/box-plots/…。describe
肯定是默认使用linear
插值,因为它调用Series/DataFrame.quantile
有点道理,但我也看到了一些奇怪的地方,可能是因为奇数和偶数样本。好的。谢谢。
和你一样,我也上过耶鲁,但只住了一个学期,因为对我来说太贵了。成本刚刚超过收益。
【参考方案1】:
第一季度
我没有在 plotly 文档中找到描述,但可以公平地假设解释与 Percentile 差别不大:
在统计中,百分位数(或百分位数)是一个分数,低于该分数 频率分布中给定分数的百分比下降 (唯一定义)或分数等于或低于给定百分比 跌倒(包括定义)。例如,第 50 个百分位( 中位数)是低于(不包括)或等于或低于 (含)分布中 50% 的分数都可以找到。
您可以在 plotly 文档中仔细查看Difference Between Quartile Algorithms 下差异的直观表示:
第二季度
不,df.describe()
似乎没有 exclusive
参数:
模块 pandas.core.generic 中描述方法的帮助:
描述(百分位数=无,包括=无,排除=无, datetime_is_numeric=False) -> ~FrameOrSeries 方法 pandas.core.frame.DataFrame 实例
如您所见,它确实有include
和exclude
。但他们做的事情与你正在寻找的完全不同:
include : 'all',类似于列表的 dtypes 或 None(默认),可选 要包含在结果中的数据类型白名单。忽略 为
Series
。以下是选项:- 'all' : All columns of the input will be included in the output. - A list-like of dtypes : Limits the results to the provided data types. To limit the result to numeric types submit ``numpy.number``. To limit it instead to object columns submit the ``numpy.object`` data type. Strings can also be used in the style of ``select_dtypes`` (e.g. ``df.describe(include=['O'])``). To select pandas categorical columns, use ``'category'`` - None (default) : The result will include all numeric columns.
exclude : list-like of dtypes or None (default), optional, A black list of data types to omit from the result. Ignored for ``Series``. Here are the options: - A list-like of dtypes : Excludes the provided data types from the result. To exclude numeric types submit ``numpy.number``. To exclude object columns submit the data type ``numpy.object``. Strings can also be used in the style of ``select_dtypes`` (e.g. ``df.describe(include=['O'])``). To exclude pandas categorical columns, use ``'category'`` - None (default) : The result will exclude nothing.
【讨论】:
看起来棒极了!感谢分享! @ASH 并不多,但希望你在寻找什么!以上是关于我们怎样才能得到一个情节箱线图背后的不同统计数据?的主要内容,如果未能解决你的问题,请参考以下文章