scipy.stats.trimboth(a, proportiontocut, axis=0) function slices off the portion of elements in the array from both the ends.
Parameters :
arr : [array_like] Input array or object to trim.
axis : Axis along which the mean is to be computed. By default axis = 0.
proportiontocut : Proportion (in range 0-1) of data to trim of each end.Results : trimmed array elements from both the ends in the given proportion.
Code #1: Working
# stats.trimboth() method import numpy as np from scipy import stats arr1 = [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ] print ( "\narr1 : " , arr1) print ( "\nclipped arr1 : \n" , stats.trimboth(arr1, proportiontocut = . 3 )) print ( "\nclipped arr1 : \n" , stats.trimboth(arr1, proportiontocut = . 1 )) |
Output :
arr1 : [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] clipped arr1 : [3 4 5 6] clipped arr1 : [1 3 2 4 5 6 7 8]
Code #2:
# stats.trimboth() method import numpy as np from scipy import stats arr1 = [[ 0 , 12 , 21 , 3 , 14 ], [ 53 , 16 , 37 , 85 , 39 ]] print ( "\narr1 : " , arr1) print ( "\nclipped arr1 : \n" , stats.trimboth(arr1, proportiontocut = . 3 )) print ( "\nclipped arr1 : \n" , stats.trimboth(arr1, proportiontocut = . 1 )) print ( "\nclipped arr1 : \n" , stats.trimboth(arr1, proportiontocut = . 1 , axis = 1 )) print ( "\nclipped arr1 : \n" , stats.trimboth(arr1, proportiontocut = . 1 , axis = 0 )) |
Output :
arr1 : [[0, 12, 21, 3, 14], [53, 16, 37, 85, 39]] clipped arr1 : [[ 0 12 21 3 14] [53 16 37 85 39]] clipped arr1 : [[ 0 12 21 3 14] [53 16 37 85 39]] clipped arr1 : [[ 0 3 12 14 21] [16 37 39 53 85]] clipped arr1 : [[ 0 12 21 3 14] [53 16 37 85 39]]