Numpy

1. Numpy简介

Numpy是一个Python科学计算库,主要功能之一是用来操作数组和矩阵


2. 数组(array)创建与操作
2.1 数组创建
import numpy as np
# 创建一维和二维数组
a = np.array([1, 2, 3], dtype=np.int32)
b = np.array([[1, 2, 3], [3, 4, 5]])
# 创建一维和二维全零数组
a = np.zeros(4)
b = np.zeros((1,4))
# 创建全一数组
a = np.ones((2,2))
# 创建等差数组
a = np.arange(1,10,2) # [1,10),步长为2
# 创建 0-1 随机数数组
a = np.random.random((2,2))
# 创建随机整数数组
a = np.random.randint(1,10,(2,2)) #[1,10)

numpy属性
ndim - 维度; shape - 行数和列数; size - 元素个数

2.2 数组操作
单个矩阵操作
np.sum(a)                  # 矩阵元素之和
np.sum(a, axis=0/1)        # 矩阵元素按行/列求和
np.min(a)                  # 矩阵元素最小值
np.mean(a)                 # 矩阵元素平均值
np.argmin(a)               # 矩阵最小值索引
np.sort(a)                 # 矩阵每行递增排序
np.around(a)               # 近似取整
np.ceil(a)                 # 向上取整
np.floor(a)                # 向下取整
a = arrange(4).reshape((2,2))
a = a.flatten()  # 矩阵展平
两个矩阵操作
# 对应元素相加减/相乘/平方
c = a-b
c = a*b
c = a**2
# 矩阵相乘
c = a.dot(b)
矩阵索引
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
a[1]        # [4,5,6]
a[1][2]     # [6]
a[1,0:4]    # [4,5,6]
矩阵合并
c = np.vstack((a,b)) # 上下合并
c = np.hstack((a,b)) # 左右合并
c = np.dstack((a,b)) # 深度合并

c = np.concatenate((a,b),axis=0/1)  # 左右/上下合并
矩阵拆分
np.split(a,3,axis=0/1)         # 按行/列分成三份
np.split(a,[1,3],axis=0/1)     # 按行/列在第2和4行/列前切分
3. copy 与 =
b = a          # b与a内存地址一致
b = a.copy()   # b与a内存地址不同
4. 广播机制

当数组和一个标量进行计算时,标量需要根据数组的形状进行扩展,然后执行计算,该扩展过程成为“广播”。

a = np.array([[0,0,0],[1,1,1],[2,2,2]])
b = np.array([1,1,1])
print(a+b)   # [[1 1 1],[2 2 2],[3 3 3]]
  • 4
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值