Numpy实现正态分布
正态分布也称"常态分布",又名高斯分布,他在数据分析的许多方面都有着重大的影响力。正态分布是应用最广泛、最常见的一种数据分布形式。正态分布像一只倒扣的钟,两头低,中间高,左右对称,大部分数据集中在平均值附近,小部分在两端。
在进行数据分析时中发现数据源呈现正态分布的特性,只需要把样本总数量、平均值、方差表达出来,就已经能够形成一个完整的分析图表,通过正态分布曲线分布和横坐标就可以发现对应数值发生的概率,这对人们描述对象分析意义很大。
python
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import matplotlib as mpl
mpl.use('TkAgg')
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
sns.set_style('darkgrid')
n = np.random.normal(0, 0.1, 1000) #生成均值为0,标准差为0.1的一维正态分布样本1000个
print(n)
sns.distplot(n) #直方图
plt.show()# 显示
Numpy处理图像灰度处理
图像其实是由若干像素组成,每一个像素都有明确的位置和被分配的颜色值,因此一张图片也就构成了一个像素矩阵。
灰度图的数据是一个二维数组,颜色取之为0-255,其中,0为黑色,255为白色。从0-255逐渐由暗色变为亮色。由此可见,图像灰度处理是就可以通过数组计算来实现。
RGB转换成灰度图像的常用公式
css
Gray = R*0.299+G*0.587+B*0.114
Gray 代表的是灰度值
R、G、B代表的是红、绿、蓝颜色值
0.299、0.587、0.114代表灰度公式的固定值
ini
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
mpl.use('TkAgg')
n1 = plt.imread("flower.jpg") # 读取图片
plt.imshow(n1) # 传入数组显示对应颜色
# n1为三维的数组,最高维是图像的高,次高维是图像的宽,最低维[R,G,B]是颜色值
n2 = np.array([0.299, 0.587, 0.114]) # 灰度公式的固定值
x = np.dot(n1, n2) # 将数组n1(RGB颜色值)和数组n2(灰度公式的固定值)中的每个元素进行点乘运算
plt.imshow(x, cmap="gray") # 传入数组显示灰度
plt.show() # 显示图像