Numpy快速入门实战全集

Numpy是一个用python实现的科学计算的扩展程序库,包括:

  • 1、一个强大的N维数组对象Array;
  • 2、比较成熟的(广播)函数库;
  • 3、用于整合C/C++和Fortran代码的工具包;
  • 4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。

NumPy(Numeric Python)提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如:Lawrence Livermore,NASA用其处理一些本来使用C++,Fortran或Matlab等所做的任务。

1.Numpy基本操作

1.1 列表转为矩阵
import numpy as np

array = np.array([
    [1, 3, 5],
    [4, 6, 9]
])

print(array)

在这里插入图片描述

1.2 维度
print('number of dim:', array.ndim)

在这里插入图片描述

1.3 行数和列数()
print('shape:',array.shape)

在这里插入图片描述

1.4 元素个数
print('size:',array.size)

在这里插入图片描述

2.Numpy创建array

2.1 一维array创建
import numpy as np
# 一维array
a = np.array([2,23,4], dtype=np.int32) # np.int默认为int32
print(a)
print(a.dtype)

在这里插入图片描述

2.2 多维array创建
# 多维array
a = np.array([[2,3,4],
              [3,4,5]])
              
# 生成2行3列的矩阵
print(a)

在这里插入图片描述

2.3 创建全零数组
a = np.zeros((3,4))
print(a) # 生成3行4列的全零矩阵

在这里插入图片描述

2.4 创建全1数据
# 创建全一数据,同时指定数据类型
a = np.ones((3,4),dtype=np.int)
print(a)
print(a.dtype)

在这里插入图片描述

2.5 创建全空数组
# 创建全空数组,其实每个值都是接近于零的数
a = np.empty((3,4))
print(a)

在这里插入图片描述

2.6 创建连续数组
# 创建连续数组
a = np.arange(10,21,2) # 10-20的数据,步长为2
print(a)

在这里插入图片描述

2.7 reshape操作
# 使用reshape改变上述数据的形状
b = a.reshape((2,3))
print(b)

在这里插入图片描述

2.8 创建连续型数据
# 创建线段型数据
a = np.linspace(1,10,20) # 开始端1,结束端10,且分割成20个数据,生成线段
print(a)

在这里插入图片描述

2.9 linspace的reshape操作
# 同时也可以reshape
b = a.reshape((5,4))
print(b)

在这里插入图片描述

3.Numpy基本运算

3.1 一维矩阵运算
# 一维矩阵运算
a = np.array([10,20,30,40])
b = np.arange(4)
print(a, b)

在这里插入图片描述

c = a - b
print(c)

在这里插入图片描述

print(a*b) 

在这里插入图片描述

print(a.dot(b))

在这里插入图片描述

# 在Numpy中,想要求出矩阵中各个元素的乘方需要依赖双星符号 **,以二次方举例,即:
c = b**2
print(c)

在这里插入图片描述

# Numpy中具有很多的数学函数工具
c = np.sin(a)
print(c)

在这里插入图片描述

print(b<2)

在这里插入图片描述

a = np.array([1,1,4,3])
b = np.arange(4)
print(a==b)

在这里插入图片描述

3.2 多维矩阵运算
a = np.array([[1,1],[0,1]])
b = np.arange(4).reshape((2,2))
print(a)
print("*"*10)
print(b)

在这里插入图片描述

# 多维度矩阵乘法
# 第一种乘法方式:
c = a.dot(b)
print(c)

在这里插入图片描述

# 第二种乘法:
c = np.dot(a,b)
print(c)

在这里插入图片描述

a = np.random.random((2, 4))

print(np.sum(a))

在这里插入图片描述

print(a)
print(np.min(a))

在这里插入图片描述

print(a)

print(np.max(a))

在这里插入图片描述
如果你需要对行或者列进行查找运算,就需要在上述代码中为 axis 进行赋值。

  • 当axis的值为0的时候,将会以列作为查找单元,
  • 当axis的值为1的时候,将会以行作为查找单元。
print(a)

print("sum=",np.sum(a,axis=1)

在这里插入图片描述

print(a)

print("min=", np.min(a,axis=0))

在这里插入图片描述

print(a)

print("max=",np.max(a, axis=1))

在这里插入图片描述

3.3 基本计算
A = np.arange(2,14).reshape((3,4))
print(A)

在这里插入图片描述

# 最小元素索引
print(np.argmin(A)) # 0

在这里插入图片描述

# 最大元素索引
print(np.argmax(A)) # 11

在这里插入图片描述

# 求整个矩阵的均值
print(np.mean(A)) # 7.5

在这里插入图片描述

print(np.average(A)) # 7.5

在这里插入图片描述

print(A.mean()) # 7.5

在这里插入图片描述

# 中位数
print(np.median(A)) # 7.5

在这里插入图片描述

# 累加
print(np.cumsum(A))

在这里插入图片描述

B = np.array([[3, 5, 9],
              [4, 8, 10]])
print(B)
print(np.diff(B))

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值