数据分析之numpy的操作

共 2670字,需浏览 6分钟

 ·

2021-03-18 01:32

关注我们
Python日志


下午好啊

土豆本期说一下数据分析的另一个库

numpy

大家准备好认真阅读哦




01

Numpy(Numerical Python)是一个开源的Python科学计算库,用于快速处理任意维度的数组。


Numpy支持常见的数组和矩阵操作。对于同样的数值计算任务,使用Numpy比直接使用Python要简洁的多


Numpy使用ndarray对象来处理多维数组,该对象是一个快速而灵活的大数据容器。


Numpy专门针对ndarray的操作和运算进行了设计,所以数组的存储效率和输入输出性能远优于Python中的嵌套列表,数组越大,Numpy的优势就越明显。


02

NumPy 操作

使用NumPy,开发人员可以执行以下操作:

数组的算数和逻辑运算。

傅立叶变换和用于图形操作的例程。

与线性代数有关的操作。NumPy 拥有线性代数和随机数生成的内置函数。


03

NumPy – MatLab 的替代之一

NumPy 通常与 SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用。这种组合广泛用于替代 MatLab,是一个流行的技术计算平台。但是,Python 作为 MatLab 的替代方案,现在被视为一种更加现代和完整的编程语言。

NumPy 是开源的,这是它的一个额外的优势。


04

NumPy - Ndarray 对象

NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型。它描述相同类型的元素集合。可以使用基于零的索引访问集合中的项目。

ndarray中的每个元素在内存中使用相同大小的块。ndarray中的每个元素是数据类型对象的对象(称为 dtype)。

从ndarray对象提取的任何元素(通过切片)由一个数组标量类型的 Python 对象表示。下图显示了ndarray,数据类型对象(dtype)和数组标量类型之间的关系。



大小与排序

numpy在排序等方面常用的函数如下:


函数名

功能

函数名

功能

min

最小值

max

最大值

ptp

极差

argmin

最小值下标

minium

二元最小值

maxinum

二元最大值

sort

数组排序

argsort

数组排序下标

percentile

分位数

median

中位数


NumPy - 数据类型


NumPy 支持比 Python 更多种类的数值类型。下表显示了 NumPy 中定义的不同标量数据类型。


数据类型及描述
bool_ 存储为一个字节的布尔值(真或假)
int_ 默认整数,相当于 C 的long,通常为int32int64
intc 相当于 C 的int,通常为int32int64
intp 用于索引的整数,相当于 C 的size_t,通常为int32int64
int8 字节(-128 ~ 127)
int16 16 位整数(-32768 ~ 32767)
int32 32 位整数(-2147483648 ~ 2147483647)
int64 64 位整数(-9223372036854775808 ~ 9223372036854775807)
uint8 8 位无符号整数(0 ~ 255)
uint16 16 位无符号整数(0 ~ 65535)
uint32 32 位无符号整数(0 ~ 4294967295)
uint64 64 位无符号整数(0 ~ 18446744073709551615)
float_ float64的简写
float16 半精度浮点:符号位,5 位指数,10 位尾数
float32 单精度浮点:符号位,8 位指数,23 位尾数
float64 双精度浮点:符号位,11 位指数,52 位尾数
complex_ complex128的简写
complex64 复数,由两个 32 位浮点表示(实部和虚部)
complex128 复数,由两个 64 位浮点表示(实部和虚部)


NumPy 数字类型是dtype(数据类型)对象的实例,每个对象具有唯一的特征。这些类型可以是np.bool_np.float32等。


数据类型对象 (dtype)

数据类型对象描述了对应于数组的固定内存块的解释,取决于以下方面:

  • 数据类型(整数、浮点或者 Python 对象)

  • 数据大小

  • 字节序(小端或大端)

  • 在结构化类型的情况下,字段的名称,每个字段的数据类型,和每个字段占用的内存块部分。

  • 如果数据类型是子序列,它的形状和数据类型。

numpy.flags

ndarray对象拥有以下属性。这个函数返回了它们的当前值。


属性及描述
C_CONTIGUOUS (C) 数组位于单一的、C 风格的连续区段内
F_CONTIGUOUS (F) 数组位于单一的、Fortran 风格的连续区段内
OWNDATA (O) 数组的内存从其它对象处借用
WRITEABLE (W) 数据区域可写入。将它设置为flase会锁定数据,使其只读
ALIGNED (A) 数据和任何元素会为硬件适当对齐
UPDATEIFCOPY (U) 这个数组是另一数组的副本。当这个数组释放时,源数组会由这个数组中的元素更新


NumPy - 数组创建例程


新的ndarray对象可以通过任何下列数组创建例程或使用低级ndarray构造函数构造。

numpy.empty

它创建指定形状和dtype的未初始化数组。它使用以下构造函数:

numpy.empty(shape, dtype = float, order = 'C')


构造器接受下列参数:


参数及描述
Shape 空数组的形状,整数或整数元组
Dtype 所需的输出数组类型,可选
Order 'C'为按行的 C 风格数组,'F'为按列的 Fortran 风格数组


本期内容就先到这里啦

觉得不错的话别忘了给土豆一个三连哦

我们下期再见哦


需要学习资料的可以添加土豆的微信领取哦




Python日志
关注我们
一个认真搞知识的公众号

内容源自网络

浏览 37
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报