私は Matlab コード (他の誰かによって書かれた) を Python に翻訳しています。
Matlab コードの 1 つのセクションでは、変数X_new
は次のように対数正規分布から得られた値に設定されます。
% log normal distribution
X_new = exp(normrnd(log(X_old), sigma));
つまり、 を中心とする正規分布からランダムな値が抽出されlog(X_old)
、この値まで引き上げられるようにX_new
設定されます。e
このコードを Python に直接変換すると、次のようになります。
import numpy as np
X_new = np.exp(np.random.normal(np.log(X_old), sigma))
ただしnumpy
、直接サンプリングできる対数正規分布が含まれています。
私の質問は、次のコード行は上記のコード行と同等ですか?
X_new = np.random.lognormal(np.log(X_old), sigma)