numpy使用笔记

numpy初始化:

生成矩阵(数列):array = np.array([1,2,3], dytpe=np.float32)

生成有序的矩阵(数列):array= np.arange(1,10,12).reshape((3,4))

生成有序的线段矩阵(数列):array= np.arange(12).reshape((3,4))

初始化值为0的3行4列矩阵:array = np.zeros((3.4))

初始化值为1的3行4列矩阵:array = np.ones((3.4))

初始化值接近0的3行4列矩阵:array = np.empty((3.4))

 

numpy基础操作:

a = np.array([[1,1],[0,1]])

b = np.arange(4).reshape(2,2)

c = a*b   #逐个元素相乘

c_dot = np.dot(a,b)  #矩阵乘法运算
a = np.random.random((2,4))#随机生成0到1的矩阵

np.sum(a)#求和

np.sum(a,axis=0) #axis=1行中求和,axis=0列中求和

np.min(a)#最小值,axis同理

np.max(a)#最大值,axis同理
np.mean(a)#求平均值

np.argmax(a)#求最大索引,np.argmin同理

np.median(a)#求中位数

np.cumsum(a)#累加前所有元素,输出一维数组

np.diff(a)#累差,维度不变

np.nonzero(a)#输出多个一维数组,表示行、列等

np.sort(a)#对矩阵逐行排序

np.transpose(a)#矩阵的反向(转置),行列互换

np.clip(a,a_min,a_max)#截取矩阵,大于a_max全都变成a_max,a_min同理

meshgrid

[X,Y] = meshgrid(x,y) 将向量x和y转换成矩阵X和Y;

1.矩阵X的行向量是向量x的简单复制

2.而矩阵Y的列向量是向量y的简单复制(注:X和Y均是数组,在文中统一称为矩阵了)。

假设x是长度为m的向量,y是长度为n的向量,则最终生成的矩阵X和Y的维度都是 nm (注意不是mn)。

文字描述可能不是太好理解,下面通过代码演示下:

加载数据

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
m, n = (5, 3)
x = np.linspace(0, 1, m)
y = np.linspace(0, 1, n)
X, Y = np.meshgrid(x,y)

 

查看向量x和向量y

x
out:
array([ 0. , 0.25, 0.5 , 0.75, 1. ])
y
out:
array([ 0. , 0.5, 1. ])

 

查看矩阵X和矩阵Y

X
out:
array([[ 0. , 0.25, 0.5 , 0.75, 1. ],
[ 0. , 0.25, 0.5 , 0.75, 1. ],
[ 0. , 0.25, 0.5 , 0.75, 1. ]])
Y
out:
array([[ 0. , 0. , 0. , 0. , 0. ],
[ 0.5, 0.5, 0.5, 0.5, 0.5],
[ 1. , 1. , 1. , 1. , 1. ]])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值