2

我正在尝试从当前范围为 0 到 1 的数组中获取数据点,并根据一些不同的分布重新映射它们。例如,我将数据重新映射为衰减指数 (lambda * e^(-lambda * x)),标准差为 0.06 以下。

# Import the packages I need
from pyDOE import lhs
from scipy.stats.distributions import norm
from scipy.stats.distributions import expon
import matplotlib.pyplot as plt

# CREATING THE LHC


n = 3                 # The number of parameters to generate. Columns
samples = 40          # The number of sample points for each parameter. Rows
criterion = 'maximin' # The spacing between pararameters. maximin for our purposes 

lhd = lhs(n, samples=samples, criterion=criterion) # Making the Latin-Hyper-Square

# print(lhd)            # Show the array
# plt.hist(lhd, bins=20)   # Plot the array

# Trying the transformation with exponentials
    
lhd1 = lhd  # Create an identical array so I can compare and contrast
mean = [0]
stdv = [.06]

for i in range(n):
    lhd1[:, i] = expon(loc=mean, scale=stdv).ppf(lhd1[:, i])


           
print(lhd1)           # Show the Transformed array   
plt.hist(lhd1,bins=20)  # Plot the array

我想做同样的事情,但指数增长(lambda * e^(lambda * x))。我在网上和文档中可以找到的所有内容都谈到了衰减指数概率分布,但几乎没有关于正指数的内容。

我可以改变“expon”分布吗?我应该使用另一个发行版吗?欢迎任何建议。

4

0 回答 0