python numpy 笔记

# np.random.normal()  获取正态分布,也是高斯分布的随机数。
# np.random.normal(loc=0.0, scale=1.0, size=None) 
# 这3个参数分别是 
# loc,  location, 中心点,平均值大小
# scale, 是分布的上下宽度是多大, 是标准差。
# size, 就是 shape 
 

# numpy 随机数分布
numpy.random.rand(a, b) 返回  shape(a, b) 的随机数,大小在[0, 1)之间。
numpy.random.randn(a,b) 返回  shape(a, b) 的随机数, 服从正态分布。

【正态分布(Normal distribution),也称“常态分布”,又名高斯分布】
大部分数据集中在平均值,小部分在两端。
神奇的地方在于,不管是人的身高,手臂长度,肺活量,还是他们的考试成绩,都符合正态分布。


矩阵相乘的时候,顺序很重要。高位在左,低位再右

##### 
1. 对于 numpy.shape的理解
   比如对于一个三维矩阵 img.shape = (200, 300, 3): 200* 200列的网格,每个格子里面有3个元素(255, 255, 255)
   指的是第一个维度,有200个元素,第2个维度, 有300个元素, 第3个维度, 有3个元素
   且图片的高度是200, 即为200行, 宽度是300300列。
   每个像素点,有3个值组成,分别是rgb.

2. np.dot(a, b), 就是按照对应位置  先进行相乘,然后求和。  


#### 临时笔记
1. numpy.sin(X) 这里可以对一个数组进行整体计算
2. np.argmax(A)  返回的是最大数的索引
3. np.argsort(A) 返回的是排序后对应的的索引
4. numpy 读取文件:
   np.genfromtxt()   不包含缺失值
   np.loadtxt()      包含缺失值
5. np.astype(TYPE), 类型转换, 会返回一个新的对象,不改变原始数据
6. np.clip(A, min, max) 对一个数组进行修剪。小于 min, 会变成 min, 大于max,会变成 max
7. np.std() 标准差
8. np.var() 方差
9. 


#### 随机数
0. numpy.random.seed() 当我们设置相同的seed,每次生成的随机数相同,
   但是换了单元格之后,就会出现问题。
1. np.random.rand()  生成[0,1)之间的数据,包含0,不包含1
2. np.random.randn()0为均值、以1为标准差的正态分布,
   正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形
   np.random.randn(4, 100), 会生成一个4行,100列的矩阵。
3. np.random.standard_normal((3, 4)), 大致取值区间是 【-3311. numpy 随机数的问题
np.random.rand(10), rand, 返回的是 [0, 1) 之间的的随机数。平均值是 0.5
np.random.randn(10), randn 返回的是值大概是在 [-5, 5] 之间。属于是高斯分布。正态分布。平均值是0, 方差是1#### numpy 里面的几点笔记内容 这里需要整理到下面去。
1. 广播的概念。即一个 array 可以和一个矩阵直接相加,
   只要他们的 shape能兼容。从而取代了循环,提升性能
3. np.empty(2) 创建的是随机数,根据内存而定
4. np.arange(4), 类似普通的 range() 函数
5. np.linspace(0, 10, num=5)  类似range() 函数加个步长
6. np.sort(arr) 快速排序
7. np.concatenate((x, y), axis=0)  拼接
8. np.vstack((a1, a2))  垂直方向拼接
9. np.hstack((a1, a2))  水平方向拼接
10. np.flip(arr)   逆序
11. x.flatten()  二维转一维
12. arr = arr.astype(float)  类型转换。 arr.dtype


#### 一个普通的 np 对象,类型是 ndarray, 常用的属性
1. x.base   从内存地址查看,x 是从哪个对象引用过来的
2. x.size   查看元素的数量 等于矩阵的 row * col 
3. for i in x.flat:  逐个遍历矩阵的元素
4. x.dtype  查看数据类型

 
#### 常用的方法
1. x.tolist()  把 ndarray 对象转为 普通python 列表
2. x.astype(str)  类型转化
3. z = x.copy()   复制
4. z.fill(3)      把原始尺寸的矩阵,全部用3来填充
5. 



#### 数据选取
1. ret = np.take(x2, [1,2], axis=1) 这个方法的写法比较复杂。
2. 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

waterHBO

老哥,支持一下啊

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值