<a href="https://colab.research.google.com/github/yeyomuri/probabilidad/blob/main/distribucion_continua.ipynb" target="_parent"></a>


```python
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from scipy.stats import norm
```

#Distribucion normal teórica

\begin{align}
P(X) = \frac{1}{\sigma \sqrt{2\pi}^{\left[ -\frac{1}{2}\left(\frac{X - 𝜇}{\sigma}\right)^2\right]}}
\end{align}


```python
def gaussian(x, mu, sigma):
  return 1/(sigma * np.sqrt(2*np.pi))*np.exp(-0.5 * pow((x-mu)/sigma, 2))
```


```python
#Lista de datos de entrada para la funcion gaussiana
x = np.arange(-4, 4, 0.1)
y = gaussian(x, 0.0, 1.0)
plt.plot(x, y)

```

#Usando scipy


```python
dist = norm(0, 1) #promedio, desviacion estandar
x = np.arange(-4, 4, 0.1)
y = [dist.pdf(value) for value in x]
plt.plot(x,y)
```


```python
dist = norm(0, 1)
x = np.arange(-4, 4, 0.1)
y = [dist.cdf(value) for value in x]
plt.plot(x, y)
```

#Distribución normal (gaussiana) a partir de los datos

Archivo [excel](https://seattlecentral.edu/qelp/sets/057/057.html) 


```python
df = pd.read_excel('s057.xls')
arr = df['Normally Distributed Housefly Wing Lengths'].values[4:]
#frecuencia de los datos del array
values, dist = np.unique(arr, return_counts=True)
plt.bar(values, dist)
```


```python
#Estimacion parametrica de una distribucion
mu = arr.mean()
sigma = arr.std()
x = np.arange(30, 60, 0.1)
dist = norm(mu, sigma)
y = [dist.pdf(value) for value in x]
plt.plot(x,y)
values, dist = np.unique(arr, return_counts = True)
plt.bar(values, dist/len(arr))
```

7f55d615783c5321159df8e91d69573ebe149030
ipynb
Jupyter Notebook
probabilidad_continua/distribucion_continua.ipynb
yeyomuri/probabilidad
e36eacb1a40c6721624603f05f75adc1a7037967
CC0-1.0
probabilidad_continua/distribucion_continua.ipynb
yeyomuri/probabilidad
e36eacb1a40c6721624603f05f75adc1a7037967
CC0-1.0
probabilidad_continua/distribucion_continua.ipynb
yeyomuri/probabilidad
e36eacb1a40c6721624603f05f75adc1a7037967
CC0-1.0
Qwen/Qwen-72B
1. YES
2. YES