目录:
一、笔记
二、我的自学路线
三、笔记目录
一、笔记
1) numpy 概念
① numpy是Python语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
② numpy是一个运行速度非常快的数学库,主要用于数组计算,包含:1. 一个强大的N维数组对象 ndarry
2. 广播功能函数
3. 整合 C/C++/Fortran 代码的工件
③ Anaconda自带numpy库,纯python开发环境要安装numpy库,用anaconda的原因是因为它自带了大多数我们常用的包了。
④ numpy最重要的一个特点是其N维"数组"对象ndarry,它是一系列 "同类型数据" 的集合,以0下标为开始进行集合中元素的索引。
⑤ ndarray对象是用于存放同类型元素的多维数组。
⑥ ndarray中每个元素在内存中都有相同存储大小的区域。
import numpy as np
a = np.array([[1,2,3],[4,5,6]])
print(a)
print(a.ndim) # ndarry维度
print(a.shape) # ndarry形状
print(a.size) # ndarry元素个数
print(a.dtype) # ndarry元素类型
运行结果:
[[1 2 3]
[4 5 6]]
2
(2, 3)
6
int32
import numpy as np
a = np.array([[[1,2,3],[4,5,6]]])
print(a)
print(a.ndim) # ndarry维度跟最外层括号[]有关
# 第一个括号去掉,有一个元素,所以第一维为1,第二个括号去掉有两个元素,所以第二维为2
print(a.shape)
print(a.size)
print(a.dtype) # a中元素为int32
运行结果:
[[[1 2 3]
[4 5 6]]]
3
(1, 2, 3)
6
int32
import numpy as np
a = np.array([[[1,2,3,8],[4,5,6]]])
print(a) # 当不同长度时,np.array会将里面的数组转换为列表
print(a.ndim) # 只有两维,存的的是两个列表,所以减少一维
print(a.shape)
print(a.size)
print(a.dtype) # a中元素为对象了
运行结果:
[[list([1, 2, 3, 8]) list([4, 5, 6])]]
2
(1, 2)
2
object
import numpy as np
a = np.array([[[1,2.0,3],[4,5,6]]]) # 有一个浮点型 2.0
print(a) # 全部变为浮点型了
print(a.ndim)
print(a.shape)
print(a.size)
print(a.dtype) # 变为浮点型数据了
运行结果:
[[[1. 2. 3.]
[4. 5. 6.]]]
3
(1, 2, 3)
6
float64
2) numpy 数据类型
① 创建numpy数组的时候可以通过属性dtype显示指定数据的类型。
② 在不指定数据类型的情况下,numpy会自动推断出适合的数据类型。
③ 如果需要更改一个已经存在的数组的数据类型,可以通过astype方法进行修改从而得到一个新数组。
a2 = np.array([1,2,3,4]) # 自动推断出合适的数据类型,里面无浮点数,变为int32
print(a2.dtype)
a3 = a2.astype(float) # astype得到的是一个新数组,原数组没有改变。
print(a2.dtype)
print(a2)
print(a3.dtype)
print(a3)
运行结果:
int32
int32
[1 2 3 4]
float64
[1. 2. 3. 4.]
3) numpy 常用方法
① arange()函数:类似python的range函数,通过指定开始值、终值和步长来创建一个一维数组,注意:最终创建的数组不包含终值。
② linspace()函数:通过指定开始值、终值和元素个数来创建一个一维数组,数组的数据元素符合等差数列,可以通过endpoint关键字指定是否包含终值,默认包含终值。
③ logspace()函数:和linspace函数类似,不过创建的是等比数列数组。
④ random()函数:创建0-1之间的随机元素,数组包含的元素数量由参数决定。
import numpy as np
x = np.empty([3,2],dtype = np.int) # 产生3行2列的二维数组,数组中每个元素都是随机数
x
运行结果:
array([[ 757935392, 757935405],
[ 17073284