Python数据分析1-NumPy入门和实战

本文详细介绍了NumPy库的使用,包括ndarray的创建、属性、数据类型、数组变换、索引和切片、数组运算及存取等。通过实例展示了如何创建数组、使用各种函数如zeros、ones、empty、arange,以及如何进行数组重塑、数据合并、切片、索引等操作。此外,还涵盖了NumPy的随机数函数、统计运算、排序、集合运算和线性代数等内容。
摘要由CSDN通过智能技术生成

目录

1.1ndarry数组

1.1.1创建ndarray数组

        1.zeros函数

         2.ones函数

         3.empty函数

        4.arange函数

 1.1.2ndarray对象属性

 1.1.3ndarray数据类型

 1.1.4数组变换

        1.数组重塑

        2.数据合并

         3.数组拆分

        4.数组转置和轴对换

 1.1.5NumPy的随机数函数

2.2数组的索引和切片

2.2.1数组的索引

 2.2.2数组的切片

 2.2.3布尔型索引

 2.2.4花式索引

2.3数组的运算

 2.3.1数组和标量间的运算

 2.3.2通用函数

 2.3.3条件逻辑运算

 2.3.4统计运算

 2.3.5布尔型数组运算 

 2.3.6排序

 2.3.7集合运算

 2.3.8线性代数

2.4数组的存取

2.4.1数组的存取

 2.4.2数组的读取

 2.5综合实例-图像变换


        Numpy库是用于科学计算的一个开源Python托充程序库,是其他数据分析包的基础包,他为Python提供了高性能数组与矩阵运算处理能力。本节将讲解多维数组的创建及其基本属性、数组的切片和索引方法、数组的运算与存取等内容。最后还有案例。

1.1ndarry数组

        Numpy库为Python带来了真正的ndarry多维数组功能。ndarray对象是一个快速而灵活的数据集容器。本节主要学习ndarray多维数组的创建方法、数组的属性和数组中的简单操作等内容。

1.1.1创建ndarray数组

        通过NumPy库的array函数,即可轻松的创建ndarray数组。NumPy库能将序列数据(列表、元组、数组或其他序列类型)转换为ndarray数组

        对于多维数组的创建,使用嵌套序列数据即可完成,这时我们可以数" [ " 来确定是几维数组,下列括号第一个括号后面两个“ [ ”那么这就是一个二维数组。

         通常来讲,ndarray是一个通用的同构数据容器,即其中的所有元素都需要是相同的类型,当创建好一个ndarray数组时,同时会在内存中存储ndarray的shape和dtype。shape是ndarray维度大小的元组,dtype是解释说明ndarray数据类型的对象。下面数组arr3的shape的意思是2行3列,dtype的意思是int32类型。

         在创建数组时,NumPy会为新建的数组推断出一个合适的数据类型,并保存在dtype对象中,如下图。当序列中有整数和浮点数时,NumPy会把数组的dtype定义为浮点数类型数据。

         除了可以使用np.array创建数组外,NumPy库还有一些函数可创建一些特殊的数组,下面就简单介绍几个常用的数组创建函数。

        1.zeros函数

        zeros函数可以创建指定长度或形状的全0数组,如下图

         2.ones函数

        ones函数可以创建指定长度或形状全1数组,如下图

         3.empty函数

        empty函数可以创建一个没有具体值的数组(垃圾值),如下图创建的是2个2行3列的数组。

         注意:数据的基本类型基本都是float64类型。

        4.arange函数

        arange函数类似于Python的内置函数range,但是arange函数主要用于创建数组,如下图

         更多数组创建函数,如下表

函数 使用说明

arange

类似于内置range函数,用于创建数组
ones 创建指定长度或形状的全1数组
one_like 以另一个数组为参考,根据其形状和dtype创建全1数组
zeros、zeros_like 类似于ones、ones_like,创建0数组
empty、empty_like 同上,创建没有具体值的数
eye、identity 创建正方形的N*N单位矩阵数值或0或1

         这里再介绍以下ones_like函数的用法,如下图

 1.1.2ndarray对象属性

        Numpy创建的ndarray对象属性,如下表

属性 使用说明
.ndim 秩,即数据轴的个数(个人来看这才是数组的维度)
.shape 反应几行几列
.size 元素的总数
.dtype 数据类型
.itemsize 数组中每个元素字节大小

        对于shape和dtype属性在前面已经说过了,这里看下其他属性的使用,如下图 

        arr数组的类型数据是int32位,对于计算机而言,1个字节是8位,所以arr的itemsize属性值为4 

 1.1.3ndarray数据类型

        由前面内容得知:在创建数组时,NumPy会为新建的数组推断出一个合适的数据类型。同样,也恶意通过dtype给创建的数组指定数据类型,如下图

         数组的数据类型有很多,我们只需要记住最常见的几种数据类型就行,如浮点数(float)、整数(int)、复数(complex)、布尔值(bool)、字符串(string_)和Python对象(object)

        对于创建好的ndarray,可以通过astype方法进行数据类型的转换,如下图

         注:np.float64和“float64”都可以完成操作

         如果将浮点数转换为整数,并不会使用四舍五入的方式来转换,二十元素的小数部分被截断如下图

        如果数组是字符串类型且全是数字的话,也可以通过astype方法将其转换为数值类型

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值