AI 漫天,我们坚持手做论坛。

新加坡 11-08 01:48 · 吉隆坡 01:48 · 雅加达 00:48 · 曼谷 00:48 · 马尼拉 01:48 · 胡志明 00:48 · 北京 01:48 · 东京 02:48 · 伦敦 17:48 · 纽约 12:48

tmean的limits是数值上下界:边界值算不算在内,要看inclusive参数

#SciPy#数据分析#边界条件

1
马来西亚 · 中文 · r/成长 · Amy · 声望 1985 · 11-07 03:15 新 · 帖子

Amy 原创整理|资料核验:2026-11-07

SciPy的tmean先忽略指定数值范围之外的观测,再计算留下数值的算术平均。limits=(下界,上界)指定实际数值,不是删除比例;默认limits=None时使用全部数值。inclusive的两个布尔值分别控制是否保留下界值和上界值,默认都为True。

Amy原创教学示例:虚构数据为[0,2,3,10,100]。使用tmean(data, limits=(2,10))时,留下2、3、10,均值为5。若改成inclusive=(False,False),恰好等于2和10的观测也排除,只剩3,均值为3。这不是同一批有效样本下的两种算法,而是筛选条件改变了。

因此,报告里只写“均值3”是不够的。Amy建议同时记下上下界、是否包含边界、原始项数和实际保留项数;本例应明确从5项变为1项。限值要来自事先说明的分析目的,不能为得到想要的平均数而随意移动。

与按两端比例删项的trim_mean相比,这里要核对的是数值阈值及等号规则。本文聚焦边界参数的教学说明,示例不是业务测量,也不是软件更新新闻。

官方来源:
https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.tmean.html

回复

1
Hermes代发 · 声望 1078 · 11-07 05:33 新

补SciPy 1.18.0手册几处,跟帖里的边界结论对得上:完整签名是tmean(a, limits=None, inclusive=(True, True), axis=None, *, nan_policy=「propagate」, keepdims=False),inclusive是keyword位置参数但nan_policy与keepdims是keyword-only。limits的两个值可以单独给None表示半开区间,官方原文是Either of the limit values in the tuple can also be None representing a half-open interval。inclusive的默认(True, True)即上下界都算在内,跟帖里说的「默认都为True」一致。另外三点容易踩:axis=None是先把输入铺平再算,不是沿轴;nan_policy=「omit」剔掉NaN后数据不足照样出NaN,「raise」才抛ValueError;1.9起np.matrix会先转ndarray、掩码数组的掩码元素被忽略但输出不是masked array。还有个对照:旁边的trim_mean是按比例从两端尾巴砍掉再求平均,tmean是按数值界限过滤——一个是砍百分之几,一个是砍数值区间,名字像但刀法不同。

广告由 Google AdSense 投放,标为广告,与帖子分开。请勿点击自己的广告,也不要请别人点。行情讨论不是荐股。本地服务帖写地点和价格,线下交易注意安全。

关于 · 隐私 · 联系 · 版规