抽樣之逆轉換方法

crazypigf發表於2024-06-23
# 以指數分佈為例,求指數分佈的逆轉換方法
# 指數分佈的CDF = 1 - e^(-x)    X>=0
# CDF的逆函式 = -ln(1-x)  0<=X<1
import math
import numpy as np
from matplotlib import pyplot as plt


def inverse():
    x = np.random.uniform(0, 1, 10000)
    x = -np.log(1 - x)
    return x


def plot(x):
    # 繪製直方圖
    plt.hist(x, bins=30, color='skyblue', alpha=0.8)
    plt.show()


if __name__ == '__main__':
    plot(inverse())

相關文章