平时数据分析各种分布的数据构造,特别是正态分布,那怎么生成这样的数据呢,random模块提供了非常方便的函数
#加载所需要的包
import random
import matplotlib.pyplot as plt
import seaborn as sns
vonmisesvariate
描述:卡帕分布
语法:vonmisesvariate(mu, kappa)
data = [random.vonmisesvariate(2,2) for i in range(20000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图
weibullvariate
描述:威布尔分布
语法:random.weibullvariate(alpha, beta)
data = [random.weibullvariate(1,2) for i in range(20000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图
betavariate
描述: β分布
语法:random.betavariate(alpha, beta)
data = [random.betavariate(1,2) for i in range(20000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图
expovariate
描述:指数分布
语法:random.expovariate(lambd)
data = [random.expovariate(2) for i in range(50000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图
gammavariate
描述: 伽马分布
语法:random.gammavariate(alpha, beta)
data = [random.expovariate(2) for i in range(50000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图
gauss
描述:高斯分布
语法:random.gauss(mu, sigma)
data = [random.gauss(2,2) for i in range(50000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图
lognormvariate
描述:对数正态分布
语法:random.lognormvariate(mu, sigma)
示例:
data = [random.gauss(2,2) for i in range(50000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图
normalvariate
描述: 正态分布
语法:random.normalvariate(mu, sigma)
data = [random.normalvariate(2,4) for i in range(20000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图
triangular
描述:返回一个low <= N <=high的三角形分布的随机数。参数mode指明众数出现位置。
语法: random.triangular(low, high, mode)
data = [random.triangular(2,2,3) for i in range(20000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图无法显示
paretovariate
描述:帕累托分布
语法:random.paretovariate(alpha)
data = [random.paretovariate(4) for i in range(50000)]
#直方图
plt.hist(data, bins=100, color="#FF0000", alpha=.7)
#密度图
sns.kdeplot(data, shade=True,color="#FF0000")
直方图
密度图