第二章 | Numpy计算

一、Numpy的对象

        提供了两种对象:ndarray和ufunc,其中ndarray表示存放单一数据类型的多维数组对象。ufunc是用来计算数组的函数。

二、创建ndarray对象的方法

属性名称

属性说明

ndim

返回int,表示数组的维数

shape

返回tuple,表示数组形状的阵列,对于n行m列的矩阵,形状为(n,m)

size

返回int,表示数组的元素总数,等于数组形状的乘积

dtype

返回data-type,表示数组中元素的数据类型

基本语法:

import numpy as np

np.array(object对象)

举例:

1.使用arange创建数组

基本语法:

numpy.arange(开始的数字,结束的数字,步长)

举例:

2.常用的特殊数组的创建函数

举例:

使用ones方法创建数组:

3.random生成随机数的数组

基本语法:

import numpy as np

np.random.random(数组的元素个数)

举例:

生成具有一定范围的随机整数

基本语法:

np.random.randint(随机数范围开始值,随机数范围结束值,数组的形状)

举例:

4.numpy的数组索引

一维数组的索引操作

二维数组的索引操作

说明:在获取索引值的时候,可以先将二维数组中的行看成一个一维数组,然后再通过该行形成的数组找到具体列的索引并获取值。

5.Numpy创建矩阵和相关函数运用

        Numpy的矩阵和数组都是继承ndarray对象。矩阵是一种特殊的类似于二维数组的对象,主要用于数学领域中的计算。能够实现数学中矩阵相关的计算。矩阵的应用非常广泛:图像识别、语言识别、深度学习、机器学习、统计分析等。

创建矩阵的函数:mat、matrix、bmat函数

矩阵的四则运算:类似于数学中的计算过程,主要包含*、+、-、/,加减乘除

6.ufunc函数的简介

        ufunc函数是numpy中用来运算的通用函数,功能比较强大。

        主要是针对数组进行相关的运算:四则运算、比较运算、逻辑运算

        四则运算:ufunc函数支持全部的四则运算,并且保留习惯的运算符,和数值运算的使用方式一样,但是需要注意的是,操作的对象是数组。数组间的四则运算表示对每个数组中的元素分别进行四则运算,因此进行四则运算的两个数组的形状必须相同。

        比较运算:在ufunc函数中也支持完整的比较运算:>、<、==、>=、<=、!=。比较运算返回的结果是一个布尔数组,其每个元素为数组对应元素的比较结果。

        逻辑运算:在NumPy逻辑运算中,numpy.all函数表示逻辑and,numpy.any函数表示逻辑or。

注意:比较运算和逻辑运算的结果只能是true 或者false

举例:

        创建两个数组分别进行四则运算,运算的结果:每一个数组相同位置的元素的加减乘除

ufunc函数的广播机制

        如果两个数组之间的形状(数组的行和列)不同,当进行函数运算的时候,形状小的会进行填补和形状大的保持一致。

        如果二维数组和一维数组进行运算,主要的操作是从上往下进行填补,其填补的元素为一维数组每一个位置相同的数字。

        如果二维数组和二维数组进行运算,主要的操作是从左往右进行填补,其填补的元素为一维数组每一个位置相同的数字。

7.numpy的文件读写以及常用的分析方法

        numpy提供了保存和读取文件的函数,主要是针对数组的保存以及读取,保存可以是二进制文件也可以是文本文件。

(1)numpy 保存二进制文件方法

numpy.save(‘路径/文件名称’,数组名)

保存后的文件的后缀名为:xxx.npy

注意:文件的路径是相对路径,该相对路径是针对代码文件的位置。

如果保存多个数组使用savez函数

numpy.savez(‘路径/文件名称’,数组名1,数组名2)

默认的文件后缀名为:xxxx.npz

(2)保存、加载文本格式

保存文本格式:numpy.savetxt(‘文件相对路径/文件名称’,数组)

加载文本格式:numpy.loadtxt(‘文件相对路径/文件名称’,delimiter=’分隔符号‘)

参考教材中代码2-42

(3)加载文件

加载二进制文件的格式

numpy.load(’文件名称‘)

说明:当加载具有多个数组的文件,此时就需要按照要求对对应的数组进行输出。

表示方式:      

  加载数据对象[‘arr_序号’]

  此时序号从0开始表示

8.numpy简单的数据统计分析

(1)排序

        在numpy生成的数组中,存在以下几种排序方式:按横轴排序、纵轴排序,按数组中的数字大小排序

        排序的函数主要有:sort、argsort、lexsort函数,常用使用sort排序。

(2) 数据去重和重复

        数据去重在数据统计分析中是一个重要的步骤,有些脏数据,需要通过函数去掉,才能保证数据的可靠性和准确。使用unique函数进行唯一值的保留,去掉重复数据。

        数字类型的数组去重效果一致。

9. numpy统计函数

        在数学中对数据处理和统计主要涉及:求和、求平均值、求最大值、最小值、方差、

        常用的函数:sum()、mean()、max()、min()、var()、argmin()、argmax()、std()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值