前提・実現したいこと
自分で定義した確率密度関数に基づく乱数を生成
発生している問題・エラーメッセージ
そもそもアプローチの仕方がわからない.. scipyのrvsもここでは使えなさそうだった.
該当のソースコード
Python
1import numpy as np 2import random 3lamda=1.5 4xi=0.4 5x=random.uniform(1.01,1.5)#違うというかいらない気がする 6pdf=1/np.sqrt(2*np.pi)/xi/(x-1)*np.exp(-((np.log(x-1)-lamda)/xi)**2/2) 7#このあとがどうしたらいいかわからない. 8#random(pdf)???
試したこと
scipy.stats.rvs_ratio_uniforms:ドキュメンテーション読んで使えそうだったのにimport時に下記のようなエラー
import scipy.stats.rvs_ratio_uniforms as rvs
ModuleNotFoundError: No module named 'scipy.stats.rvs_ratio_uniforms'
補足情報(FW/ツールのバージョンなど)
環境はanacondaです.
pdf(x)とxの範囲は定義できています.xの定義域は,1<=x<=無限.x=1.2程度でピークの非対称の分布.
分布は対数正規分布をベースにしたものですが,平均・標準偏差を改良してあるため,一般的なscipyのモジュールなどは使えません.
正規分布の例などあれば,自分で直していけると思います.
あるいは,前述のモジュールを使えるようになる方法を教えてください.
お願いします.
回答5件
あなたの回答
tips
プレビュー