Numpy入门知识整理

Numpy是Python科学计算的核心库,本教程简单介绍了Numpy的基本操作。

数组

和MATLAB一样,数组是Numpy中额基本操作单元,其初始化方式包括直接使用数据初始化、初始化成全0、全1、单位矩阵、随机矩阵。

import numpy as np

a = np.array([1,2,3])
print(type(a))                  #Prints ""
print (a.shape)                 #Prints "(3,)"
print(a[0],a[1],a[2])           #Prints "1 2 3"
print(a)                        #Prints "[1,2,3]"

b = np.array([[1,2,3],[4,5,6]])    # Create a rank 2 array
print(b.shape)                     # Prints "(2, 3)"
print(b[0, 0], b[0, 1], b[1, 0])   # Prints "1 2 4"

Numpy还支持生成特殊格式的数组

# 全零
a = np.zeros((2,2))
print(a)

# 全一
b = np.ones((2,3))
print(b)

#全为固定值
c = np.full((2,2),7)

#方阵
d= np.eye((2))
print(d)

#随机阵
e = np.random.random((2,2))
print(e)

下标访问

Numpy支持下标访问,可以方便方便获取某个元素或者某块元素。

a = np.array([[1,2,3,4], [5,6,7,8], [9,10,11,12]])
#获取某个元素
print(a[0,0])           #Prints "1"
#取0到2(不包括2)行的第0个元素
print(a[0:2,0])         #Prints "[1 5]"
#取第0行
print(a[0,:])           #Prints "[1,2,3,4]"
#取第0列
print(a[:,0])           #Prints "[1,5,9]"

数学计算

Numpy支持矩阵之间的各种计算。

x = np.array([[1,2],[3,4]], dtype=np.float64)
y = np.array([[5,6],[7,8]], dtype=np.float64)

#加法
print(x+y)
print(np.add(x,y))
#Prints "[[  6.   8.][ 10.  12.]]"

#减法
print(x-y)
print(np.subtract(x,y))
#Prints "[[ -4.   -4.][ -4.  -4.]]"

#点乘
print(x.dot(y))
print(np.dot(x,y))
#Prints "[[ 19.   22.][ 43.  50.]]"

#对应位置相乘
print(x*y)
print(np.multiply(x,y))
#Prints "[[ 5.   12.][ 21.  32.]]"

#对应位置相除
print(x/y)
print(np.divide(x,y))
#Prints "[[ 0.2   0.333][ 0.428  0.5]]"

#求和操作
#所有元素求和
print(np.sum(x))
#Prints "10.0"
#对列求和
print(np.sum(x,axis = 0))
#Prints "[[4. , 6.]]"
#对行求和
print(np.sum(x,axis = 1))
#Prints "[[3. 7.]]"

你可能感兴趣的:(Python基础操作,Python科学计算)