Python 科学应用库 numpy(1)
2019-07-23 本文已影响18人
zidea
图
numpy 和 pandas
在科学运算比较重要的库 numpy 和 pandas ,如果要用 python 进行数据分析的话就会用到 numpy 和 pandas,在使用 TensorFlow 时候我们就少不了使用到 numpy ,使用 numpy 要比 python 提供数据结构 list 和 dictionary 要快和方便。
基于 python list 创建 numpy 数组
x = [0.0, 1.2, 2.3]
print(type(x))
xx = np.array(x)
print(type(xx))
<class 'list'>
<class 'numpy.ndarray'>
基于输出创建 numpy 数组
创建二维数据组,通过 shape 可以查看 numpy 数组的维度,ndim 表示数组的维度。size 给出数组元素总数。
import numpy as np
array = np.array([[1,2,3],[2,3,4]])
print(array)
print("number of dim:",array.ndim)
print("shape:",array.shape)
print("size:",array.size)
输出
[[1 2 3]
[2 3 4]]
number of dim: 2
shape: (2, 3)
size: 6
大家可能注意到了输出数组,元素间并没有逗号间隔。
import numpy as np
a = np.array([1,2,3])
print(a)
[1 2 3]
创建 np 数组时候指定数组元素数据类型
可以通过参数 dtype 给出数据元素的类型
可以通过 array 的第二个参数给数组元素指定类型
import numpy as np
a = np.array([1,2,3],dtype=np.int)
print(a.dtype)
int64
import numpy as np
a = np.array([1,2,3],dtype=np.float32)
print(a.dtype)
import numpy as np
a = np.array([[1,2,3],[2,3,4]],dtype=np.float32)
print(a)
numpy 数组初始化
生成一个初始值全部为 0 的矩阵
b = np.zeros((3,4))
b = np.ones((3,4),dtype=np.int16)
b = np.empty((3,4),dtype=np.int16)
[[ 0 0 0 -16384]
[ -4664 -31994 2041 -12288]
[ 2 12398 32664 0]]
a = np.arange(10,20,2)
print(a)
[10 12 14 16 18]
对 numpy 数组进行修改维度
可以通过 reshape 对 numpy 数组进行修改维度(形状)
a = np.arange(12).reshape((3,4))
print(a)
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
y = [1, 2, 3, 4, 5, 6, 7, 8]
yy = np.array(y)
Y = np.reshape(yy, (2, 4))
print(Y)
import numpy as np
a = np.linspace(1,10,5)
print(a)
[ 1. 3.25 5.5 7.75 10. ]