给定最大值、最小值和生成点数,如何生成偏态分布的numpy数组

2024-04-18 23:24:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从纬度边界生成纬度(最小、最大纬度和点数)。你知道吗

我有两个选择来生成这个:

使用多重概率分布,用1概率分布生成x,因为这不是正态分布

或者

做一个引入偏斜的分布。 主要目的是得到非正态分布的阵列点。你知道吗

我可能犯了个概念上的错误。你知道吗

def array_gen(min,max):
    new_lat_ = np.linspace(min,max,1000)
    a = 3
    r = skewnorm.rvs(a, size=1000)
    #not sure how to use the new_lat_
    arr = skewnorm.pdf(new_lat_, *skewnorm.fit(new_lat_))
    ax.hist(r, density=True,histtype='stepfilled', alpha=0.2)
    ax.hist(arr, density=True,histtype='stepfilled', alpha=0.2)
    return arr 
array = array_gen(12.786963,13.140868)
fig

我期望分布是倾斜的,我知道,但它不在我期望的范围内。期望范围=(12.786963,13.140868)

0.43939953,0.75707352,0.63534797,0.40377254,0.27907808, 0.23454434, 0.11875663, 0.07422289, 0.02375133, 0.00296892 -0.1491852 , 0.1876381 , 0.5244614 , 0.8612847 , 1.198108, 1.53493129, 1.87175459, 2.20857789, 2.54540119, 2.88222449, 3.21904779美元


Tags: truenewaxmindensityarrayhistmax