Python scipy.stats.circstd() Examples
The following are 16
code examples of scipy.stats.circstd().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
scipy.stats
, or try the search function
.
Example #1
Source File: test_morestats.py From Computable with MIT License | 6 votes |
def test_circstd_axis(self): x = np.array([[355,5,2,359,10,350], [351,7,4,352,9,349], [357,9,8,358,4,356]]) S1 = stats.circstd(x, high=360) S2 = stats.circstd(x.ravel(), high=360) assert_allclose(S1, S2, rtol=1e-11) S1 = stats.circstd(x, high=360, axis=1) S2 = [stats.circstd(x[i], high=360) for i in range(x.shape[0])] assert_allclose(S1, S2, rtol=1e-11) S1 = stats.circstd(x, high=360, axis=0) S2 = [stats.circstd(x[:,i], high=360) for i in range(x.shape[1])] assert_allclose(S1, S2, rtol=1e-11)
Example #2
Source File: test_morestats.py From GraphicDesignPatternByPython with MIT License | 6 votes |
def test_circstd_axis(self): x = np.array([[355, 5, 2, 359, 10, 350], [351, 7, 4, 352, 9, 349], [357, 9, 8, 358, 4, 356]]) S1 = stats.circstd(x, high=360) S2 = stats.circstd(x.ravel(), high=360) assert_allclose(S1, S2, rtol=1e-11) S1 = stats.circstd(x, high=360, axis=1) S2 = [stats.circstd(x[i], high=360) for i in range(x.shape[0])] assert_allclose(S1, S2, rtol=1e-11) S1 = stats.circstd(x, high=360, axis=0) S2 = [stats.circstd(x[:, i], high=360) for i in range(x.shape[1])] assert_allclose(S1, S2, rtol=1e-11)
Example #3
Source File: test_utils_stats.py From pysat with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_circstd(self): """ Test custom circular std.""" ref_std = scistats.circstd(self.test_angles, **self.circ_kwargs) test_std = pystats.nan_circstd(self.test_angles, **self.circ_kwargs) assert ref_std == test_std
Example #4
Source File: test_utils_stats.py From pysat with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_circstd_nan(self): """ Test custom circular std with NaN.""" ref_std = scistats.circstd(self.test_angles, **self.circ_kwargs) ref_nan = scistats.circstd(self.test_nan, **self.circ_kwargs) test_nan = pystats.nan_circstd(self.test_nan, **self.circ_kwargs) assert np.isnan(ref_nan) assert ref_std == test_nan
Example #5
Source File: test_utils_stats.py From pysat with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_deprecation_warning_circstd(self): """Test if circstd in stats is deprecated""" with warnings.catch_warnings(record=True) as war: try: pystats.nan_circstd(None) except TypeError: # Setting input to None should produce a TypeError after # warning is generated pass assert len(war) >= 1 assert war[0].category == DeprecationWarning
Example #6
Source File: test_morestats.py From Computable with MIT License | 5 votes |
def test_circfuncs(self): x = np.array([355,5,2,359,10,350]) M = stats.circmean(x, high=360) Mval = 0.167690146 assert_allclose(M, Mval, rtol=1e-7) V = stats.circvar(x, high=360) Vval = 42.51955609 assert_allclose(V, Vval, rtol=1e-7) S = stats.circstd(x, high=360) Sval = 6.520702116 assert_allclose(S, Sval, rtol=1e-7)
Example #7
Source File: test_morestats.py From Computable with MIT License | 5 votes |
def test_circfuncs_small(self): x = np.array([20,21,22,18,19,20.5,19.2]) M1 = x.mean() M2 = stats.circmean(x, high=360) assert_allclose(M2, M1, rtol=1e-5) V1 = x.var() V2 = stats.circvar(x, high=360) assert_allclose(V2, V1, rtol=1e-4) S1 = x.std() S2 = stats.circstd(x, high=360) assert_allclose(S2, S1, rtol=1e-4)
Example #8
Source File: test_morestats.py From Computable with MIT License | 5 votes |
def test_circfuncs_array_like(self): x = [355,5,2,359,10,350] assert_allclose(stats.circmean(x, high=360), 0.167690146, rtol=1e-7) assert_allclose(stats.circvar(x, high=360), 42.51955609, rtol=1e-7) assert_allclose(stats.circstd(x, high=360), 6.520702116, rtol=1e-7)
Example #9
Source File: test_morestats.py From Computable with MIT License | 5 votes |
def test_empty(self): assert_(np.isnan(stats.circmean([]))) assert_(np.isnan(stats.circstd([]))) assert_(np.isnan(stats.circvar([])))
Example #10
Source File: test_morestats.py From GraphicDesignPatternByPython with MIT License | 5 votes |
def test_circfuncs(self): x = np.array([355, 5, 2, 359, 10, 350]) M = stats.circmean(x, high=360) Mval = 0.167690146 assert_allclose(M, Mval, rtol=1e-7) V = stats.circvar(x, high=360) Vval = 42.51955609 assert_allclose(V, Vval, rtol=1e-7) S = stats.circstd(x, high=360) Sval = 6.520702116 assert_allclose(S, Sval, rtol=1e-7)
Example #11
Source File: test_morestats.py From GraphicDesignPatternByPython with MIT License | 5 votes |
def test_circfuncs_small(self): x = np.array([20, 21, 22, 18, 19, 20.5, 19.2]) M1 = x.mean() M2 = stats.circmean(x, high=360) assert_allclose(M2, M1, rtol=1e-5) V1 = x.var() V2 = stats.circvar(x, high=360) assert_allclose(V2, V1, rtol=1e-4) S1 = x.std() S2 = stats.circstd(x, high=360) assert_allclose(S2, S1, rtol=1e-4)
Example #12
Source File: test_morestats.py From GraphicDesignPatternByPython with MIT License | 5 votes |
def test_circfuncs_array_like(self): x = [355, 5, 2, 359, 10, 350] assert_allclose(stats.circmean(x, high=360), 0.167690146, rtol=1e-7) assert_allclose(stats.circvar(x, high=360), 42.51955609, rtol=1e-7) assert_allclose(stats.circstd(x, high=360), 6.520702116, rtol=1e-7)
Example #13
Source File: test_morestats.py From GraphicDesignPatternByPython with MIT License | 5 votes |
def test_empty(self): assert_(np.isnan(stats.circmean([]))) assert_(np.isnan(stats.circstd([]))) assert_(np.isnan(stats.circvar([])))
Example #14
Source File: test_stats_utils.py From arviz with Apache License 2.0 | 5 votes |
def test_circular_standard_deviation_1d(data): high = 8 low = 4 assert np.allclose( _circular_standard_deviation(data, high=high, low=low), circstd(data, high=high, low=low), )
Example #15
Source File: models.py From protwis with Apache License 2.0 | 5 votes |
def radial_stddev(L): scipy = circstd(L, 360,0) return scipy
Example #16
Source File: diagnostics.py From arviz with Apache License 2.0 | 4 votes |
def _mc_error(ary, batches=5, circular=False): """Calculate the simulation standard error, accounting for non-independent samples. The trace is divided into batches, and the standard deviation of the batch means is calculated. Parameters ---------- ary : Numpy array An array containing MCMC samples batches : integer Number of batches circular : bool Whether to compute the error taking into account `ary` is a circular variable (in the range [-np.pi, np.pi]) or not. Defaults to False (i.e non-circular variables). Returns ------- mc_error : float Simulation standard error """ _numba_flag = Numba.numba_flag if ary.ndim > 1: dims = np.shape(ary) trace = np.transpose([t.ravel() for t in ary]) return np.reshape([_mc_error(t, batches) for t in trace], dims[1:]) else: if _not_valid(ary, check_shape=False): return np.nan if batches == 1: if circular: if _numba_flag: std = _circular_standard_deviation(ary, high=np.pi, low=-np.pi) else: std = stats.circstd(ary, high=np.pi, low=-np.pi) else: if _numba_flag: std = np.float(_sqrt(svar(ary), np.zeros(1))) else: std = np.std(ary) return std / np.sqrt(len(ary)) batched_traces = np.resize(ary, (batches, int(len(ary) / batches))) if circular: means = stats.circmean(batched_traces, high=np.pi, low=-np.pi, axis=1) if _numba_flag: std = _circular_standard_deviation(means, high=np.pi, low=-np.pi) else: std = stats.circstd(means, high=np.pi, low=-np.pi) else: means = np.mean(batched_traces, 1) if _numba_flag: std = _sqrt(svar(means), np.zeros(1)) else: std = np.std(means) return std / np.sqrt(batches)