正态分布python代码
时间: 2023-09-12 13:02:34 浏览: 25
下面是一个计算正态分布的Python代码:
```python
import math
def normal_distribution(x, mu, sigma):
return (1 / (sigma * math.sqrt(2 * math.pi))) * math.exp(-0.5 * ((x - mu) / sigma)**2)
mu = 0 # 均值
sigma = 1 # 标准差
x = 1 # 待计算概率密度的值
print(normal_distribution(x, mu, sigma))
```
在这段代码中,我们定义了一个 normal_distribution 函数,该函数计算了一个值 x 在指定均值和标准差下的正态分布的概率密度。我们还定义了均值 mu 和标准差 sigma 的值,以及需要计算概率密度的值 x。最后,我们使用 print 函数输出计算结果。
相关问题
标准正态分布python代码
可以使用scipy库中的stats模块来生成标准正态分布。以下是Python代码示例:
```python
from scipy.stats import norm
# 生成100个符合标准正态分布的随机数
samples = norm.rvs(size=100)
print(samples)
```
输出:
```
[-0.16593019 0.18972205 0.30667938 -0.38788125 -0.52070353 -1.42109845
1.6745864 -1.49938967 0.31294025 -0.95522584 -1.45866802 -0.70640625
-1.22047806 0.56476184 0.15919849 -0.1502898 0.70681955 2.0231485
-1.50368925 -0.4293156 -0.23330715 -1.99916812 2.14167831 -0.08664092
-0.38244862 1.01605405 -0.3665893 0.57957332 -1.35748995 -0.1432389
...
```
excel中第一列数据正态分布python代码
以下是将 Excel 表格中第一列数据作为正态分布的输入,并计算其概率密度函数、绘制直方图和拟合曲线的 Python 代码:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
# 读取 Excel 表格数据
df = pd.read_excel('example.xlsx')
# 提取第一列数据
data = df.iloc[:, 0].values
# 计算均值和标准差
mu, sigma = norm.fit(data)
# 绘制直方图
plt.hist(data, bins=30, density=True, alpha=0.6, color='g')
# 生成正态分布的概率密度函数
xmin, xmax = plt.xlim()
x = np.linspace(xmin, xmax, 100)
p = norm.pdf(x, mu, sigma)
# 绘制拟合曲线
plt.plot(x, p, 'k', linewidth=2)
# 显示图形
plt.show()
```
首先,我们导入了 `pandas`、`numpy`、`matplotlib.pyplot` 和 `scipy.stats.norm` 模块。然后,使用 `pandas.read_excel()` 函数读取了 Excel 表格数据,并使用 `pandas.DataFrame.iloc()` 方法提取了第一列数据。接着,使用 `scipy.stats.norm.fit()` 函数计算了该数据的均值 `mu` 和标准差 `sigma`。然后,使用 `matplotlib.pyplot.hist()` 函数绘制了数据的直方图,并使用 `scipy.stats.norm.pdf()` 函数生成了正态分布的概率密度函数。最后,使用 `matplotlib.pyplot.plot()` 函数绘制了拟合曲线,并使用 `matplotlib.pyplot.show()` 函数显示图形。