scipy.stats.mstats.

修剪#

scipy.stats.mstats.trim(a, limits=None, inclusive=(True, True), relative=False, axis=None)[源代码][源代码]#

通过屏蔽超出给定范围的数据来修剪数组。

返回输入数组的掩码版本。

参数:
a序列

输入数组

限制{None, 元组}, 可选

如果 relative 为 False,则元组 (下限, 上限) 为绝对值。输入数组中低于(高于)下限(上限)的值将被屏蔽。

如果 relative 为 True,则元组 (下百分比, 上百分比) 用于在数组的每一侧进行裁剪,相对于未掩码数据的数量。

在修剪之前,记录未屏蔽数据的个数 n,第 (n*limits[0]) 小的数据和第 (n*limits[1]) 大的数据被屏蔽,修剪后未屏蔽数据的总数为 n*(1.-sum(limits))。在每种情况下,可以将一个限制值设置为 None 以表示一个开区间。

如果 limits 为 None,则不进行修剪。

包容性{(bool, bool) 元组}, 可选

如果 relative 为 False,元组指示是否允许值完全等于绝对限制。如果 relative 为 True,元组指示在每一边被屏蔽的数据数量是否应该四舍五入(True)或截断(False)。

相对bool, 可选

是否将限制视为绝对值(False)或切割的比例(True)。

int, 可选

要修剪的轴。

示例

>>> from scipy.stats.mstats import trim
>>> z = [ 1, 2, 3, 4, 5, 6, 7, 8, 9,10]
>>> print(trim(z,(3,8)))
[-- -- 3 4 5 6 7 8 -- --]
>>> print(trim(z,(0.1,0.2),relative=True))
[-- 2 3 4 5 6 7 8 -- --]