import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
def f(x):
return np.sin(x-2)**2 * np.exp(-x**2)
x = np.arange(0, 2, 0.001)
plt.plot(x, f(x), label='$\sin^2(x-2)e^{-x^2}$', color='r', linewidth=2)
plt.xlabel('x')
plt.ylabel('f(x)')
plt.legend()
plt.show()
from scipy.linalg import lstsq
X = np.random.randint(5, size=(20, 10))
b = np.random.randn(10, 1)
z = np.random.randn(20, 1)
y = X.dot(b)+z
be = np.array(lstsq(X, y)[0])
plt.plot(np.arange(10), b, 'bo', label='y')
plt.plot(np.arange(10), be, 'rx', label='$\hat{y}$')
plt.xlabel('index')
plt.ylabel('value')
plt.legend()
plt.show()
from scipy.stats import gaussian_kde
Y = np.random.rayleigh(size=10000)
plt.hist(Y, 25, density=True)
X = np.linspace(0, 5, 1000)
plt.plot(X, gaussian_kde(Y).evaluate(X))
plt.show()