MultivariateNormalQMC#
- class scipy.stats.qmc.MultivariateNormalQMC(mean, cov=None, *, cov_root=None, inv_transform=True, engine=None, rng=None)[Quelle]#
QMC-Stichprobenziehung aus einer multivariaten Normalverteilung \(N(\mu, \Sigma)\).
- Parameter:
- meanarray_like (d,)
Der Mittelwertvektor. Wobei
ddie Dimension ist.- covarray_like (d, d), optional
Die Kovarianzmatrix. Wenn weggelassen, stattdessen cov_root verwenden. Wenn sowohl cov als auch cov_root weggelassen werden, wird die Einheitsmatrix verwendet.
- cov_rootarray_like (d, d’), optional
Eine Wurzelzerlegung der Kovarianzmatrix, wobei
d'kleiner alsdsein kann, wenn die Kovarianz nicht vollen Rang hat. Wenn weggelassen, wird cov verwendet.- inv_transformbool, optional
Wenn True, wird die inverse Transformation anstelle von Box-Muller verwendet. Standard ist True.
- engineQMCEngine, optional
Quasi-Monte-Carlo-Engine-Sampler. Wenn None, wird
Sobolverwendet.- rng
numpy.random.Generator, optional Pseudozufallszahlengenerator-Zustand. Wenn rng None ist, wird ein neuer
numpy.random.Generatorunter Verwendung von Entropie aus dem Betriebssystem erstellt. Typen, die keinenumpy.random.Generatorsind, werden annumpy.random.default_rngübergeben, um einenGeneratorzu instanziieren.Geändert in Version 1.15.0: Im Rahmen der SPEC-007-Umstellung von der Verwendung von
numpy.random.RandomStatezunumpy.random.Generatorwurde dieser Schlüssel von seed in rng geändert. Für eine Übergangszeit werden beide Schlüssel weiterhin funktionieren, obwohl nur einer gleichzeitig angegeben werden darf. Nach der Übergangszeit werden Funktionsaufrufe mit dem Schlüssel seed Warnungen ausgeben. Nach einer Abkühlphase wird der Schlüssel seed entfernt.
Methoden
random([n])Zeichne n QMC-Stichproben aus der multivariaten Normalverteilung.
Beispiele
>>> import matplotlib.pyplot as plt >>> from scipy.stats import qmc >>> dist = qmc.MultivariateNormalQMC(mean=[0, 5], cov=[[1, 0], [0, 1]]) >>> sample = dist.random(512) >>> _ = plt.scatter(sample[:, 0], sample[:, 1]) >>> plt.show()