合并矩阵numpy_Numpy-Array-Basic

本文详细介绍了Python的Numpy库,包括选择Numpy的原因、Python list与array.array的特点、numpy.array的优势和使用方法。重点讲解了如何创建特殊矩阵、执行各种运算、进行矩阵合并与分割、应用索引及进行聚合操作。通过实例展示了Numpy在数组运算、矩阵计算和数据处理中的高效性与灵活性。
摘要由CSDN通过智能技术生成

e9b81ab13d0d22b221c4606892c00b10.png

本文将对python的Numpy库中部分常用的知识进行总结整理。


Why we choose Numpy:

Python list 的特点

  • 数据类型不限 --> 灵活性强 || 效率降低

array.array 的特点

  • 单一类型数据 ,弥补了原生list的不足
  • 没有把数据当作向量或矩阵,不支持基本运算
  • 不支持 float -> int 的隐性转换

numpy.array 的特点

  • 单一数据类型
  • 多种操作指令
  • 丰富的矩阵运算

numpy 的使用:

1. create:

直接创建:

import numpy as np
nparr = np.array( [ i for i in range(10) ] )

创建特殊矩阵:

1. 零矩阵 zeros

np.zeros( shape = (3, 5), dtype = int )

2. 全1矩阵 ones

np.ones(10)

3. 全部为指定数字 full

np.full(shape = (3, 5), fill_value = 666)

4. arrange

  • in python: [i for i in range(0, 1, 0.2)]
    • 第一个数字:左区间(闭)
    • 第二个数字:右区间(开)
    • 第三个数字:步长
    • 特点:步长为整数
  • in numpy: np.arrage(0, 1, 0.2)
    • 特点 :步长可为浮点数

5. linspace

  • np.linspace(0, 20, 10)
    • 第三位数字表示在所给区间中平均分为x个数
    • 左右区间都是 闭区间

6. random

  • 调用np.random.xxx
  • randint (0, 10)
    • [0, 10) 之间的随机数
    • size = (矩阵的大小)
  • seed
    • 决定随机数的种子
    • 测试算法的时候可以使用固定的种子
  • random
    • [0, 1)之间的随机数
    • 可以给出size定义所需要的矩阵
  • normal
    • 符合正态分布的随机数
    • np.random.normal(a, b, size)
      • a -> 期望
      • b -> 方差

2. operations 操作:

1. numpy.array 的基本属性

ndim

  • 矩阵的维度

shape

  • 矩阵的尺寸大小

size

  • 矩阵的元素个数

dtype

  • 显示array中的元素的数据类型

2. numpy.array 的数据访问

  1. 下标索引
  2. x[0]
  3. x[a, b] -> row a+1, column b+1
  4. -1 实现倒序访问:
  5. x[-1] -> 最后一个元素
  6. 切片:
  7. 前一个数字默认从头开始
  • x[:5] -> [0, 5)个元素

8. 后一个数字默认最后一位数

    • x[0:] -> all

3. subarray 子阵列

  • 切片产生的子阵列是与原来的矩阵 共用存储空间的变量一旦两者其一的数据改变,会导致另一方数据的变化
  • .copy() 产生副本可以避免问题

4. reshape

  • .r
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值