Numpy快速上手

这篇博客介绍了NumPy库在数组生成、数据计算、数据索引方面的基本操作,包括创建各种类型的矩阵、执行数学运算以及进行索引选择。此外,还讲解了如何使用PIL库处理图像,如读取、转换颜色分量和图像混合。内容涵盖了从基本的数组操作到图像处理的基础知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1、数组生成

2、数据计算

3、数据索引

4、图像Image



1、数组生成

        import numpy as np

np.zeros((3,2))生成一个0矩阵
np.array([1,2,3,4])生成一个矩阵
np.ones((3,2))生成一个1矩阵
np.arange(3,8)生成一个顺序矩阵
np.linspace(0,1,5)返回 0 到 1 五个等间距递增数
np.random.rand( 2 , 4)返回随机的 2 * 4 的随机数组
np.zeros( (4 , 2 ) , dtype = np.int32 )数组默认的浮点类型是浮点类型,可以指定创建
name.shape

shape查看数组name的大小

name.astype(int)转换数据类型

        np中的常用数组类型有:

np.int8/16/32/64整型
np.uint8/16/32/64无符号整型
np.float32/64浮点数
str字符串
bool布尔值

2、数据计算

a+b矩阵相加(不同尺寸也可相加,进行拓展)
a/b矩阵相除
a@b矩阵相乘
np.matmul(a,b)矩阵相乘,与a@b等价
np.dot(a , b)矩阵点乘
np.sqrt(a)矩阵求平方根
np.sin(a)矩阵进行sin运算
np.cos(a)矩阵进行cos运算
np.log(a)矩阵进行对数运算
np.power(a , 2)矩阵进行指数运算
name.min()name数组最小值
name.argmin()name数组最小值的位置索引
name.mean()返回数组的平均值
name.var()返回方差
name.std()标准差
name.sum(axis = 1)按行相加
np.median(a)返回数组的中位数

3、数据索引

a[0,1]取下标 0 1 的元素
a[ (a > 3) & (a % 2 == 0) ]取大于3 并且可以被二整除的元素
a[0 , :] / a[0]取整行
a[ 0 : 9 : 2]取下标0到9的值(左闭右开),且跨度等于2
a[::-1]数组反转

        &与;

        |或。

4、图像Image

from PIL import Image
import numpy as np

im = Image.open('ph.jpg')

im = np.array(im)

# print(im.shape)#查看大小

# print(im[100,100])#查看分量

im_r= im[:,:,0]#单独提取出所有像素点的红色分量

im1 = np.array(Image.open('ph.jpg'))
im2 = np.array(Image.open('pl.jpg'))
im_blend = im1*0.4+im2*0.6  #将两张图片按照比例混合在一起
im_blend = im_blend.astype(np.unit8)#运算结果是浮点数,为了显示图片需要将图片转化为整型数

im_flipped = im[::-1,:,:]#上下翻转

im_cropped = im[40:500,400:500,:]#切片裁剪某一部分

Image.fromarray(im_cropped).show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值