python数据分析基础知识(一)

数据分析基础知识(一)

NumPy 库

概念与作用

NumPy是一个开源的Python科学计算基础库,还是 Scipy、Pandas 等数据处理或科学计算库的基础 ,它被用于用于科学计算,且在性能、存储方面都具有一定优势。

优势:

1】由预编译好的 C 代码快速执行计算,故比之Python,它的运算速度更快。
2】有更好的存储结构来提高计算效率。
知识体系
ndarray数据结构及其特征

ufunc通用函数

像一套能处理数组的工具,能对NumPy数组中的元素逐个进行操作。
和 Python内置的math模块类似,它主要用于实现一些较为基础的数组运算,例如数学函数、三角函数等。
常见函数:

np.add()
np.subtract()

其他子模块包
包括随机数包、线性代数包,矩阵包等内容。
常见函数:

np.random.randint(low,high,shape)

导入

import numpy as np

认识ndarray数组

ndarray是一个多维数组对象

数据的维度

维度是一组数据的组织形式,一定程度上决定了一组数据的表达含义。

一维数据:

一般是由线性方式组织的数据构成
如 Python 中的列表,只能从列这一个角度去描述数据。

二维数据:

由多个一维数据构成,是一维数据的组合
如嵌套列表表示的表格,可以从行列两个维度描述。

三维数据:

由一维数据/二维数据在新维度上扩展形成
如再更多一层的列表嵌套。
更高维数据…

python数据分析基础知识(一)_第1张图片

创建ndarray数组

语法:

np.array(列表/元组…)

用法:

将Python中的列表、元组等数据类型作为参数传入到array方法中。

特点:

传几维的 Python 数据进 array() 方法中,就会生成几维的 ndarray 数组出来。

注意:不同于 Python ,ndarray 数组要求所有的元素类型相同,故传入的数据参数需要统一其内部元素的数据类型。

python数据分析基础知识(一)_第2张图片

ndarray数组的特征

元素的数据类型
单个数组中的数据是同质的,即所有元素的数据类型是相同的
python数据分析基础知识(一)_第3张图片

属性:dtype 表示数组元素的数据类型,需要查看ndarray数据类型时调用即可

例:

print(array_3.dtype)

维度信息

轴和秩

轴( axis) :保存数据的维度,会用从0开始的数字表示,一维数组轴有axis=0,二维数组轴有axis=0,axis=1…

秩( rank) :指轴的数量,或者维度的数量,一维数组秩为1,二维数组秩为2…

属性

shape 属性
——表示数组的形状,调用时返回一个元组作为结果
array_2.shape
当返回结果为(4,3)时候,表示这是一个 4 行 3 列的数组,其中不同的轴即代表这个元组的索引下标。axis = 0 方向对应返回的数组长度是 4,axis = 1 对应返回的数组长度是 3,对应关系是从最外层依次往里。

ndim 属性
——表示数组的轴/维度的数量,调用时返回一个整数作为结果

array_2.ndim
当返回结果为2时候,代表数组的轴为2,有两个维度的数量。

size 属性
——表示数组的元素个数,调用时返回一个整数作为结果
array_2.size

索引
作用:获取数组中特定位置的元素。
一维数组的单个元素索引

语法:ndarray[索引值0]

用法:与列表的切片类似,SDndarray[1]

多维数组的单个元素索引

语法:ndarray[索引值0,索引值1…]
用法:每个维度上分别取一个索引值,用逗号分割

ndarray[1,1]

例:
查看数组中值为 2 的元素

array_1[1]

索引二维数组中第3行第2列的元素

array_2[2, 1]

组合不同索引的索引切片

用法:可直接选取一维度
语法:ndarray[起点索引值: 终点索引值: 步长]
注意:
冒号左边不填相当于等于填了 0,右边不填相当于取到索引值最大的元素

终点索引值:取值时不包括

步长:用于插空取值,等于每个被取值的元素索引值之差,默认为 1

布尔索引

在目标数组上做逻辑运算,找出符合一定条件的元素,并以一维数组的形式返回。

语法:ndarray[布尔数组]

用法:通过一个布尔数组来索引目标数组,ndarray[booling]
例:

booling_1 = array_1 < 2
array_1[booling_1]

向量运算

1】两个数组形状相同时,它们内部对应位置的元素将一一对应做加减乘除
2】两个形状不同数组间运算时,它们对应维度的元素数量必须相同,或者其中一方为1,才可以运算成功
python数据分析基础知识(一)_第4张图片

你可能感兴趣的:(python学习,python,算法)