2021-10-26

2021-10-26心得

图像处理函数

iloc[:,-1] -> :,为全部列都有;-i是指倒数第i行
mean():函数功能:求取均值
shape():读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度。
DataFrame(): 1. 可以根据字典创建 2.根据文件创建
data_list = data_file.readlines() : 可以读取csv中一整行的数据
data_value = data_list[0].split(’,’) : data_list是读取一行数据所以data_list[0]就是第一行所有元素其中输出是用 “,” 作为分割,所以用split(’,’)作分割
reshape(28,28)可以转化为28*28的数组

(1)numpy.random.normal(loc=0.0, scale=1.0, size=None)

normal函数可以从高斯分布中抽取随机采样
loc指分布的均值(分布的中心)也可以说是其均值
scale指分布的标准差(分布的宽度)也可以说是标准差
size指输出值的维度,如为4就返回4个满足高斯分布的随机值,为(2,4)就返回两行四列的值
返回值为 n维数组或标量 也就是从含参的正态分布中抽取的随机样本,如为4就返回4个满足高斯分布的随机值,为(2,4)就返回两行四列的值

(2)plt.hist():绘制直方图

n, bins, patches = plt.hist(arr, bins=10, density=None, normed=0, facecolor='black', edgecolor='black',alpha=1,histtype='bar')

参数:
1.arr:必须有,指需要计算直方图的数组
2.bins:指直方图的柱数
3.density:python3.7版本貌似把normed变成了density,表示是否将得到直方图向量归一化
4.facecolor:直方图颜色
5.edgecolor:直方图边框颜色
6.alpha:透明度
7.histtype:直方图类型
返回值:
n:直方图向量,是否归一化由density表示
bins:返回各个bin的区间范围
patches:返回每个bin里面包含的数据,是一个list

(3)plt.plot()

plt.plot(x, y, format_string, **kwargs)

x为x轴的数据,列表,数组
y为y轴的数据,列表,数组
format_string为控制曲线的格式字符串
linewidth风格(画出的线可以是实现‘-’破折线‘–’等)
color颜色

绘制高斯分布直方图整体代码

import numpy as np
import matplotlib.pyplot as plt
mu, sigma = 0, 0.1    
s = np.random.normal(mu, sigma, 1000)
count, bins, ignored = plt.hist(s, 30,  color='b', density=True)
plt.plot(bins, 1/(sigma * np.sqrt(2 * np.pi)) * np.exp( - (bins - mu)**2 / (2 * sigma**2) ), linewidth=2, color='r')
plt.show()

数学知识

pow(a,b):a的b次方
dot():dot函数是矩阵相乘,而*则表示逐个元素相乘

上一篇:Https的前世今生


下一篇:单列数据的频率分布直方图