numpy

这是本人第一篇博客,目前为大一新生,人工智能专业,希望得到前辈的指导,非常感谢!
本篇总结了一些numpy的基本知识

创建并初始化一个数组:

  1. np.array([the numbers])
  2. 基本数组
    1. ndarray的通用矩阵:
    • np.zeros(n, m)
    • np.ones(n, m)
    • np.empty(number)
    1. 一维数组:
    • np.arange(start, stop)
    • np.linspace(start, stop, count)
    1. 二维矩阵:
    • np.eye(n, m) #在i=j处为1,其余为0
    • np.diag(arr, num) #在对角线初始化arr,num扩张
    • np.vander(arr, n,increasing = True) #一个行长len(arr),列长n,的数组。将arr中的元素按列排开,第一列默认为n-1次幂,降幂(升幂)排序
    1. 随机数数组:
    • 随机初始:
      • rng = np.random.default_rng(seed)
      • rng.random(start, stop)
    • 生成随机数整数数组:rng.integers(stop, size = ())
      以上都可以在括号内部最后加上dtype参数指定数据类型
  3. 数组的属性
    数组维度数 arr.ndim
    数组形状 arr.shape
    数组元素个数 arr.size
    数组类型 arr.dtype

索引和切片 (index and slice):

  1. 使用 [] 索引
  2. 行列索引

arr[:]
arr[:,]

  1. arr[条件]
  2. 获取索引 np.nonzero()

数组操作:

  1. 排序:np.sort(arr)
    除了返回数组已排序副本的 sort 之外,您还可以使用

    • argsort,它是沿指定轴的间接排序,
    • lexsort,它是对多个键的间接稳定排序,
    • searchsorted,它将在已排序数组中查找元素,以及
    • partition,它是一个部分排序。
  2. 拼接

    • np.concatenate((a, b))
    • np.vstack()
    • np.hstack()
  3. 切割

    • np.split(arr, n, axis) n如果是整数那会将数组平均切分,如果是列表或数组,则会在划分处切割。axis默认为0,在水平方向切割
    • np.hsplit() np.vsplit()
    • arr.copy() 副本
  4. 添加与删除

    函数元素及描述
    append(arr, value, axis = None)压入右边或底下
    insert(arr, obj, value, axis)obj为索引,如果不指定axis,数组会被展开
    delete(arr, obj, axis)和上面一样
    np.unique(arr, return_index = True, return_counts =True)唯一值,唯一值的第一个索引,唯一值的频率。可传递axis值
  5. 重塑和转置和展平:

    1. 重塑:

      • 重塑形状:arr.reshape(number) or np.reshape(arr,shape = () or np.resize(arr, list)这个返回新数组
      • 向数组添加轴:
        • arr[np.newaxis, :]
        • np.expand_dims(arr, axis = )
    2. 转置:

      • arr.transpose()
      • arr.T
      • 更换轴np.flip(arr,)

      可添加axis参数

    3. 展平:
      arr.flatten() 创建展平的副本
      arr.ravel() 创建展平的视图

  6. 基本数组操作:

    1. 形状相同的数组对应元素的四则运算
    2. 广播:数组与单个数字或低维数组执行操作
      1) 两个数组的维度数不同,但小维度数组的尾部形状能和大维度数组的尾部形状匹配
      2) 两个数组的某一长度均为1,或其中一个为零
  7. 聚合操作:
    arr.max()
    arr.min()
    arr.sum()
    arr.mean()
    np.median()
    np.var()方差
    arr.std()标准差
    np.sum()
    np.prod()
    np.cumsum()
    此外,还可以在括号末尾添加axis参数

numpy IO:

函数说明
load() save('filename.npy', arr)读写文件的主要操作,是以未压缩的二进制格式储存
savez(flie, *args, **kwds)储存多个数组
savetxt() loadtxt()纯文本

更多操作认准菜鸟教程runoob

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值