NumPy(Numerical Python) 是 Python 语言中做科学计算的基础库。侧重在于数值计算,也是大部分Python科学计算库的基础,多用于在大型、多维数组上执行的数值运算。
# 用array()创建一个一维数组 import numpy as np np.array([1,2,3,4,5]) # array([1, 2, 3, 4, 5]) # 使用array()创建一个多维数组 np.array([[1,2,3],[4,5,6]]) array([[1, 2, 3], [4, 5, 6]])
数组和列表的区别是什么?
np.array([1.1,‘哈哈‘,11]) # array([‘1.1‘, ‘哈哈‘, ‘11‘], dtype=‘<U32‘) np.array([1,5,6.1,8]) # array([1. , 5. , 6.1, 8. ])
将外部的一张图片读取加载到numpy数组中,然后尝试改变数组元素的数值查看对原始图片的影响
import matplotlib.pyplot as plt # imread可以返回一个numpy数组 img_arr = plt.imread(‘./1.jpg‘) # 将返回的数组的数据进行图像的展示 plt.imshow(img_arr) # imshow也可以将一个二维数组进行图片展示规 plt.imshow(img_arr + 100)
# ones zeros()与ones()相似 np.ones(shape=(3,4)) # 返回一个3行4列的np数组,元素都是1., zeros是0. array([[1., 1., 1., 1.], [1., 1., 1., 1.], [1., 1., 1., 1.]]) # linspace返回一维形式的等差数列 开始 ,结束,一共8个元素 np.linspace(0, 50, num=8) array([ 0. , 7.14285714, 14.28571429, 21.42857143, 28.57142857, 35.71428571, 42.85714286, 50. ]) #arange返回一维形式的等差数列 np.arange(0,50,5) array([ 1, 9, 17, 25, 33, 41, 49]) #random.randint 返回指定形状的随机整数数组 np.random.randint(0,20,size=(4,5)) array([[ 3, 1, 16, 14, 1], [18, 13, 10, 14, 18], [19, 19, 1, 8, 13], [15, 2, 17, 15, 6]]) #random.random 随机范围0-1 np.random.random(size=(2, 2)) array([[0.16654448, 0.59399791], [0.6076535 , 0.89254046]])
img_arr.shape # 返回数组形状 (500, 500, 3) img_arr.ndim # 返回数组维度 3 img_arr.size # 返回数组元素总个数 750000 img_arr.dtype # 返回数组元素的数据类型 dtype(‘uint8‘) type(img_arr) # 返回数组的数据类型 numpy.ndarray
修改数据类型
arr = np.array([1,2,3], dtype=‘float16‘) array([1., 2., 3.], dtype=float16) #1、修改arr元素的数据类型 arr.astype(‘int8‘) array([1, 2, 3], dtype=int8) #2、修改arr元素的数据类型 arr.dtype=‘float16‘ array([1., 2., 3.], dtype=float16)
原文:https://www.cnblogs.com/wgwg/p/13293049.html