python密度估计图
时间: 2023-06-30 21:19:51 浏览: 102
Python中常用的密度估计图有两种方式:核密度估计和基于分布拟合的密度估计。
核密度估计是一种非参数的密度估计方法,它通过在每个数据点处放置一个核函数,然后将这些核函数加权平均起来,来估计数据的概率密度函数。在Python中,可以使用Seaborn库中的kdeplot函数来绘制核密度估计图。例如,下面的代码可以绘制一个核密度估计图:
```python
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
# 生成一组随机数据
np.random.seed(0)
data = np.random.randn(1000)
# 绘制核密度估计图
sns.kdeplot(data)
plt.show()
```
基于分布拟合的密度估计则是先假设数据服从某种概率分布,然后通过拟合该分布的参数来估计数据的概率密度函数。在Python中,可以使用Scipy库中的stats模块来进行分布拟合。例如,下面的代码可以拟合一个正态分布,并绘制其密度估计图:
```python
from scipy import stats
# 拟合正态分布
mu, std = stats.norm.fit(data)
# 绘制密度估计图
sns.kdeplot(data, label='Data')
sns.kdeplot(stats.norm.pdf(data, mu, std), label='Normal')
plt.legend()
plt.show()
```
其中,stats.norm.fit函数可以用来拟合正态分布的参数,而stats.norm.pdf函数则可以用来计算正态分布在每个数据点处的概率密度值。
阅读全文