从pdf生成概率?

2024-06-16 10:24:35 发布

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

我有一些数据是正态分布的,我已经安装了一个pdf文件。但是,我想从数据集中得到给定值发生的可能性。据我所知,这是pdf下x值所在的bin区域。是否有一个numpy或scipy.stats函数来生成这个?我已经看过了,但要么我没看到,要么我缺乏理解,这让我退缩了。到目前为止我有:

import h5py
import numpy as np
from matplotlib import pyplot as plt
import matplotlib.mlab as mlab
import scipy.stats as stats
import numpy
import math


a = 'data.h5'
f = h5py.File(a,'r')
dset = f['/DATA/DATA/']
values = dset[...,0]

然后,我可以生成此数据的直方图,并将pdf文件与之匹配:

n, bins, patches = plt.hist(values, 50, normed=1)
mu = np.mean(values)
sigma = np.std(values)

plt.plot(bins, mlab.normpdf(bins, mu, sigma))

plt.show()

我可以得到给定值x的f(x)(在本例中是0.65)

print(stats.norm.pdf(0.65, np.mean(mb1), np.std(mb1)))  

有人能帮我从中得出我的概率吗?

我把输出的直方图附在pdf上。

histogram with pdf overlain


Tags: 文件数据importnumpypdfmatplotlibasstats