qrvs#
- FastGeneratorInversion.qrvs(size=None, d=None, qmc_engine=None)[source]#
給定分佈的準隨機變數。
The qmc_engine 用於繪製均勻準隨機變數,這些變數使用逆變換抽樣轉換為給定分佈的準隨機變數。
- 參數:
- sizeint、tuple of ints 或 None;可選
定義隨機變數陣列的形狀。預設值為
None
。- dint 或 None,可選
定義要轉換的均勻準隨機變數的維度。預設值為
None
。- qmc_enginescipy.stats.qmc.QMCEngine(d=1),可選
定義用於繪製準隨機變數的物件。預設值為
None
,它使用 scipy.stats.qmc.Halton(1)。
- 返回:
- rvsndarray 或純量
準隨機變數。有關形狀資訊,請參閱「註解」。
註解
輸出陣列的形狀取決於 size、d 和 qmc_engine。目的是使介面自然,但實現此目的的詳細規則很複雜。
如果 qmc_engine 是
None
,則會建立一個scipy.stats.qmc.Halton
實例,其維度為 d。如果未提供 d,則d=1
。如果 qmc_engine 不是
None
且 d 是None
,則 d 由 qmc_engine 的維度決定。如果 qmc_engine 不是
None
且 d 不是None
,但維度不一致,則會引發ValueError
。在根據上述規則確定 d 後,輸出形狀為
tuple_shape + d_shape
,其中如果 size 是
None
,則tuple_shape = tuple()
,如果 size 是
int
,則tuple_shape = (size,)
,如果 size 是序列,則
tuple_shape = size
,如果 d 是
None
或 d 是 1,則d_shape = tuple()
,且如果 d 大於 1,則
d_shape = (d,)
。
傳回陣列的元素是低差異序列的一部分。如果 d 是 1,這表示沒有任何樣本是真正獨立的。如果 d > 1,則每個切片
rvs[..., i]
都將是一個準獨立序列;有關詳細資訊,請參閱scipy.stats.qmc.QMCEngine
。請注意,當 d > 1 時,傳回的樣本仍然是提供的單變數分佈的樣本,而不是該分佈的多變數泛化。