scipy stats.skew() | Python
scipy.stats.skew(array, axis=0, bias=True)
function calculates the skewness of the data set.
skewness = 0 : normally distributed. skewness > 0 : more weight in the left tail of the distribution. skewness < 0 : more weight in the right tail of the distribution.
Its formula –
Parameters :
array : Input array or object having the elements.
axis : Axis along which the skewness value is to be measured. By default axis = 0.
bias : Bool; calculations are corrected for statistical bias, if set to False.Returns : Skewness value of the data set, along the axis.
Code #1:
# Graph using numpy.linspace() # finding Skewness from scipy.stats import skew import numpy as np import pylab as p x1 = np.linspace( - 5 , 5 , 1000 ) y1 = 1. / (np.sqrt( 2. * np.pi)) * np.exp( - . 5 * (x1) * * 2 ) p.plot(x1, y1, '*' ) print ( '\nSkewness for data : ' , skew(y1)) |
Output :
Skewness for data : 1.1108237139164436
Code #2:
# Graph using numpy.linspace() # finding Skewness from scipy.stats import skew import numpy as np import pylab as p x1 = np.linspace( - 5 , 12 , 1000 ) y1 = 1. / (np.sqrt( 2. * np.pi)) * np.exp( - . 5 * (x1) * * 2 ) p.plot(x1, y1, '.' ) print ( '\nSkewness for data : ' , skew(y1)) |
Output :
Skewness for data : 1.917677776148478
Code #3: On Random data
# finding Skewness from scipy.stats import skew import numpy as np # random values based on a normal distribution x = np.random.normal( 0 , 2 , 10000 ) print ( "X : \n" , x) print ( '\nSkewness for data : ' , skew(x)) |
Output :
X : [ 0.03255323 -6.18574775 -0.58430139 ... 3.22112446 1.16543279 0.84083317] Skewness for data : 0.03248837584866293
Please Login to comment...