scipy.stats.mstats.

trim#

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

通过掩盖超出给定限制的数据来修剪数组。

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

参数::
a序列

输入数组

limits{None, 元组}, 可选

如果 relative 为 False,则元组(下限,上限)为绝对值。输入数组的值小于(大于)下限(上限)将被掩盖。

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

注意,n 为修剪前未掩盖数据的数量,则第 (n*limits[0]) 个最小数据和第 (n*limits[1]) 个最大数据将被掩盖,并且修剪后未掩盖数据的总数为 n*(1.-sum(limits)) 在每种情况下,都可以将一个限制的值设置为 None,以指示一个开区间。

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

inclusive{(布尔, 布尔) 元组}, 可选

如果 relative 为 False,则元组指示是否允许与绝对限制完全相等的值。如果 relative 为 True,则元组指示是否应舍入(True)或截断(False)每侧被掩盖的数据数量。

relative布尔, 可选

是否将限制视为绝对值 (False) 还是要裁剪的比例 (True)。

axis整型, 可选

要修剪的轴。

示例

>>> 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 -- --]