本文整理汇总了Python中scipy.stats.skew方法的典型用法代码示例。如果您正苦于以下问题:Python stats.skew方法的具体用法?Python stats.skew怎么用?Python stats.skew使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类scipy.stats
的用法示例。
在下文中一共展示了stats.skew方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: doanes_rule
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def doanes_rule(x):
"""Convenience function for choosing an optimal number of bins using Doane's Rule.
Parameters
----------
x : numpy.ndarray or list of floats
Data to be binned.
Returns
-------
n_bins : int
"""
if not isinstance(x, ndarray):
x = array(x)
n = x.shape[0]
g1 = atleast_1d(skew(x))
sg1 = sqrt(6 * (n - 2) / ((n + 1) * (n + 3)))
return min(floor(1 + log2(n) + log2(1 + abs(g1)/sg1)))
示例2: test_rolling_skew_edge_cases
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_rolling_skew_edge_cases(self):
all_nan = Series([np.NaN] * 5)
# yields all NaN (0 variance)
d = Series([1] * 5)
x = d.rolling(window=5).skew()
tm.assert_series_equal(all_nan, x)
# yields all NaN (window too small)
d = Series(np.random.randn(5))
x = d.rolling(window=2).skew()
tm.assert_series_equal(all_nan, x)
# yields [NaN, NaN, NaN, 0.177994, 1.548824]
d = Series([-1.50837035, -0.1297039, 0.19501095, 1.73508164, 0.41941401
])
expected = Series([np.NaN, np.NaN, np.NaN, 0.177994, 1.548824])
x = d.rolling(window=4).skew()
tm.assert_series_equal(expected, x)
示例3: test_rolling
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_rolling(self):
g = self.frame.groupby('A')
r = g.rolling(window=4)
for f in ['sum', 'mean', 'min', 'max', 'count', 'kurt', 'skew']:
result = getattr(r, f)()
expected = g.apply(lambda x: getattr(x.rolling(4), f)())
tm.assert_frame_equal(result, expected)
for f in ['std', 'var']:
result = getattr(r, f)(ddof=1)
expected = g.apply(lambda x: getattr(x.rolling(4), f)(ddof=1))
tm.assert_frame_equal(result, expected)
result = r.quantile(0.5)
expected = g.apply(lambda x: x.rolling(4).quantile(0.5))
tm.assert_frame_equal(result, expected)
示例4: test_expanding
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_expanding(self):
g = self.frame.groupby('A')
r = g.expanding()
for f in ['sum', 'mean', 'min', 'max', 'count', 'kurt', 'skew']:
result = getattr(r, f)()
expected = g.apply(lambda x: getattr(x.expanding(), f)())
tm.assert_frame_equal(result, expected)
for f in ['std', 'var']:
result = getattr(r, f)(ddof=0)
expected = g.apply(lambda x: getattr(x.expanding(), f)(ddof=0))
tm.assert_frame_equal(result, expected)
result = r.quantile(0.5)
expected = g.apply(lambda x: x.expanding().quantile(0.5))
tm.assert_frame_equal(result, expected)
示例5: test_all
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_all(self):
# simple comparison of integer vs time-based windowing
df = self.regular * 2
er = df.rolling(window=1)
r = df.rolling(window='1s')
for f in ['sum', 'mean', 'count', 'median', 'std',
'var', 'kurt', 'skew', 'min', 'max']:
result = getattr(r, f)()
expected = getattr(er, f)()
tm.assert_frame_equal(result, expected)
result = r.quantile(0.5)
expected = er.quantile(0.5)
tm.assert_frame_equal(result, expected)
示例6: test_returned_dtype
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_returned_dtype(self):
dtypes = [np.int16, np.int32, np.int64, np.float32, np.float64]
if hasattr(np, 'float128'):
dtypes.append(np.float128)
for dtype in dtypes:
s = Series(range(10), dtype=dtype)
group_a = ['mean', 'std', 'var', 'skew', 'kurt']
group_b = ['min', 'max']
for method in group_a + group_b:
result = getattr(s, method)()
if is_integer_dtype(dtype) and method in group_a:
assert result.dtype == np.float64
else:
assert result.dtype == dtype
示例7: test_skew
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_skew(self):
from scipy.stats import skew
string_series = tm.makeStringSeries().rename('series')
alt = lambda x: skew(x, bias=False)
self._check_stat_op('skew', alt, string_series)
# test corner cases, skew() returns NaN unless there's at least 3
# values
min_N = 3
for i in range(1, min_N + 1):
s = Series(np.ones(i))
df = DataFrame(np.ones((i, i)))
if i < min_N:
assert np.isnan(s.skew())
assert np.isnan(df.skew()).all()
else:
assert 0 == s.skew()
assert (df.skew() == 0).all()
示例8: columns
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def columns():
feature_sizes = dict(chroma_stft=12, chroma_cqt=12, chroma_cens=12,
tonnetz=6, mfcc=20, rmse=1, zcr=1,
spectral_centroid=1, spectral_bandwidth=1,
spectral_contrast=7, spectral_rolloff=1)
moments = ('mean', 'std', 'skew', 'kurtosis', 'median', 'min', 'max')
columns = []
for name, size in feature_sizes.items():
for moment in moments:
it = ((name, moment, '{:02d}'.format(i+1)) for i in range(size))
columns.extend(it)
names = ('feature', 'statistics', 'number')
columns = pd.MultiIndex.from_tuples(columns, names=names)
# More efficient to slice if indexes are sorted.
return columns.sort_values()
示例9: test_skew
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_skew(self):
from scipy.stats import skew
alt = lambda x: skew(x, bias=False)
self._check_stat_op('skew', alt)
# test corner cases, skew() returns NaN unless there's at least 3
# values
min_N = 3
for i in range(1, min_N + 1):
s = Series(np.ones(i))
df = DataFrame(np.ones((i, i)))
if i < min_N:
assert np.isnan(s.skew())
assert np.isnan(df.skew()).all()
else:
assert 0 == s.skew()
assert (df.skew() == 0).all()
示例10: get_stat_funs
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def get_stat_funs():
"""
Previous version uses lambdas.
"""
stat_funs = []
stats = [len, np.min, np.max, np.median, np.std, skew, kurtosis] + 19 * [np.percentile]
stats_kwargs = [{} for i in range(7)] + [{'q': i} for i in np.linspace(0.05, 0.95, 19)]
for stat, stat_kwargs in zip(stats, stats_kwargs):
stat_funs.append(_StatFunAdaptor(stat,**stat_kwargs))
stat_funs.append(_StatFunAdaptor(stat, np.diff, **stat_kwargs))
stat_funs.append(_StatFunAdaptor(stat, diff2, **stat_kwargs))
stat_funs.append(_StatFunAdaptor(stat, np.unique, **stat_kwargs))
stat_funs.append(_StatFunAdaptor(stat, np.unique, np.diff, **stat_kwargs))
stat_funs.append(_StatFunAdaptor(stat, np.unique, diff2, **stat_kwargs))
return stat_funs
示例11: plot_information_table
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def plot_information_table(ic_data):
"""
IC 统计量
"""
ic_summary_table = pd.DataFrame()
ic_summary_table["IC Mean"] = ic_data.mean()
ic_summary_table["IC std."] = ic_data.std()
ic_summary_table["Risk-Adjusted IC (IR)"] = ic_data.mean() / ic_data.std()
t_stat, p_value = stats.ttest_1samp(ic_data, 0)
ic_summary_table["t-stat (IC)"] = t_stat
ic_summary_table["p-value (IC)"] = p_value
ic_summary_table["IC Skew"] = stats.skew(ic_data)
ic_summary_table["IC Kurtosis"] = stats.kurtosis(ic_data)
print("Information Analysis")
plotting_utils.print_table(ic_summary_table.apply(lambda x: x.round(3)).T)
示例12: compute_skewness
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def compute_skewness(data):
"""Skewness of the data (per channel).
Parameters
----------
data : ndarray, shape (n_channels, n_times)
Returns
-------
output : ndarray, shape (n_channels,)
Notes
-----
Alias of the feature function: **skewness**
"""
ndim = data.ndim
return stats.skew(data, axis=ndim - 1)
示例13: test_skewness
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_skewness(self):
# Scalar test case
y = stats.skew(self.scalar_testcase)
assert_approx_equal(y, 0.0)
# sum((testmathworks-mean(testmathworks,axis=0))**3,axis=0) /
# ((sqrt(var(testmathworks)*4/5))**3)/5
y = stats.skew(self.testmathworks)
assert_approx_equal(y, -0.29322304336607, 10)
y = stats.skew(self.testmathworks, bias=0)
assert_approx_equal(y, -0.437111105023940, 10)
y = stats.skew(self.testcase)
assert_approx_equal(y, 0.0, 10)
x = np.arange(10.)
x[9] = np.nan
with np.errstate(invalid='ignore'):
assert_equal(stats.skew(x), np.nan)
assert_equal(stats.skew(x, nan_policy='omit'), 0.)
assert_raises(ValueError, stats.skew, x, nan_policy='raise')
assert_raises(ValueError, stats.skew, x, nan_policy='foobar')
示例14: test_cdf_sf_small_values
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def test_cdf_sf_small_values(self):
# Triples are [x, a, cdf(x, a)]. These values were computed
# using CDF[SkewNormDistribution[0, 1, a], x] in Wolfram Alpha.
cdfvals = [
[-8, 1, 3.870035046664392611e-31],
[-4, 2, 8.1298399188811398e-21],
[-2, 5, 1.55326826787106273e-26],
[-9, -1, 2.257176811907681295e-19],
[-10, -4, 1.523970604832105213e-23],
]
for x, a, cdfval in cdfvals:
p = stats.skewnorm.cdf(x, a)
assert_allclose(p, cdfval, rtol=1e-8)
# For the skew normal distribution, sf(-x, -a) = cdf(x, a).
p = stats.skewnorm.sf(-x, -a)
assert_allclose(p, cdfval, rtol=1e-8)
示例15: extract_bag_of_characters_features
# 需要导入模块: from scipy import stats [as 别名]
# 或者: from scipy.stats import skew [as 别名]
def extract_bag_of_characters_features(data, n_val):
characters_to_check = [ '['+ c + ']' for c in string.printable if c not in ( '\n', '\\', '\v', '\r', '\t', '^' )] + ['[\\\\]', '[\^]']
f = OrderedDict()
f['n_values'] = n_val
data_no_null = data.dropna()
all_value_features = OrderedDict()
all_value_features['length'] = data_no_null.apply(len)
for c in characters_to_check:
all_value_features['n_{}'.format(c)] = data_no_null.str.count(c)
for value_feature_name, value_features in all_value_features.items():
f['{}-agg-any'.format(value_feature_name)] = any(value_features)
f['{}-agg-all'.format(value_feature_name)] = all(value_features)
f['{}-agg-mean'.format(value_feature_name)] = np.mean(value_features)
f['{}-agg-var'.format(value_feature_name)] = np.var(value_features)
f['{}-agg-min'.format(value_feature_name)] = np.min(value_features)
f['{}-agg-max'.format(value_feature_name)] = np.max(value_features)
f['{}-agg-median'.format(value_feature_name)] = np.median(value_features)
f['{}-agg-sum'.format(value_feature_name)] = np.sum(value_features)
f['{}-agg-kurtosis'.format(value_feature_name)] = kurtosis(value_features)
f['{}-agg-skewness'.format(value_feature_name)] = skew(value_features)
n_none = data.size - data_no_null.size - len([ e for e in data if e == ''])
f['none-agg-has'] = n_none > 0
f['none-agg-percent'] = n_none / len(data)
f['none-agg-num'] = n_none
f['none-agg-all'] = (n_none == len(data))
#print(len(f))
return f