numpy的简单使用

numpy的简单使用

numpy概述

  1. Numerical Python(数值python). 补充了python欠缺的数值运算能力.
  2. Numpy是其他数据分析及机器学习的底层库.
  3. Numpy完全标准C语言实现, 运行效率高.
  4. 开源免费.

numpy的历史

  1. 1995年, 发布Numeric python.
  2. 2001年, Scipy 提供 Numarray. (提供了多维数组)
  3. 2005年, Numeric + Numarray -> Numpy.
  4. 2006年, Numpy脱离Scipy成为独立的项目.

numpy的核心:多维数组

import numpy as np
ary = np.array([1, 2, 3, 4])
print(ary)

  如上所示,numpy作为python的数据处理算法库,里面包含的算法非常丰富,我在这里只说一些简单的用法。numpy的基础就是多维数组,深度学习的根本,都是将数据处理为矩阵,而numpy的多维数组,就是矩阵的最好表现形式,numpy的数据处理方法,也为处理矩阵提供了很多的便利。在这里我只介绍一些典型的方法,如果要深入学习numpy的用法,可以去看官方文档或者找一些视频好好学习一下。而我只说一些我认为重要的东西。

  1. 创建一个数组:numpy.array([内容]):创建数组可以是一维的。也可以是多维的,创建数组是使用numpy的第一步,需要好好学习
  2. 测试数组的维度:array.shape:在实际对numpy的使用中,我们大多数时候都是将现有的数据读取到numpy数组中,有时候读取的数据又臭又长,总不能一个一个去数,所以可以通过观察维度来理解数据的大概规模,比如一张图片,可以通过观察通道数来确定是灰度还是彩色。
  3. 测试元素的类型:array.dtype:直接输出观察数据类型,numpy的数组内部只能有一种数据类型。
  4. 测试元素的个数:array.size:作用同列表的len。
  5. 数组元素的索引:同列表
  6. 创建同为0或1的数组:numpy.ones,numpy.zeros,numpy.ones_like,numpy.zeros_like。有like的是创建与现有数组相同的结构。
  7. 变换维度:resize函数。
  8. 切片:同list的用法。

numpy数组的常用函数:

import numpy as np

ary = np.arange(1, 10).reshape(3, 3)
m = np.matrix(ary, copy=True)
m[0,0]=999
print(m)
print(ary)
# 等价于np.matrix(ary, copy=False)
m2 = np.mat(ary)
m2[0,0] = 888
print(m2)
print(ary)

m3 = np.mat('1 2 3; 4 5 6')
print(m3)
print(m3 * 10)
print(m3 * m3.T)
print(m3.T * m3)

print('-' * 45)
m = np.mat('1 2 3; 5 4 3; 1 6 3')
m = np.mat('1 2 3; 4 5 3; 7 8 9')
print(m)
# print(m.I)
print(np.linalg.inv(m))
print(m * m.I)

print('-' * 45)
m = np.mat('1 2 3; 5 4 3')
print(m)
print(m.I)
# print(np.linalg.inv(m))
print(m * m.I)

  上面所说的都是numpy最基础的用法,其实numpy还有很多的内置函数,包括数学公式,数据的变换等等,在这里我就不一一展开,我只是为大家提供一个方向,numpy的使用还是要在实践中不断的练习,后面会有很多的地方会展示到它的用法,下一篇开始讲传统算法。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值