python数据分析与展示——Numpy库入门

在Python中进行数据分析会用到一些模块,使用比较多的有Numpy、Matplotlib、pandas这三个基本的库。这一节主要介绍Numpy 库的基本的使用。

数据的维度

维度:也就是一组数据的组织形式
列表和数组都可以表达一组数据的有序结构,区别在于,列表中的元素类型可以不同,数组中的元素类型补休相同。
一维数据:列表或者集合
二维数据:列表(二维数据由多个一维数据构成,表格是典型的二维数据,表头也是数据的一部分)
多维数据:列表(一维或者二维数据在新的维度上扩展)
高维数据:字典或者数据表示格式(仅利用最基本的二元关系展示数据的复杂结构)
数据表示格式:JSON、XML、YAML

Numpy库

Numpy是Python科学计算的基础库,主要提供了以下功能:
  1. Numpy提供了强大的N维数组对象
  2. 提供了广播功能函数
  3. 提供了傅里叶变换、线性代数、随机数生成等功能
Numpy数组的创建
  1. 使用python列表、元祖创建数组
a=np.array([1,2,3,4])
a=np.array((1,2,3,4))
  1. 使用Numpy提供的函数创建数组
np.arange(n)       --生成一个从0到n-1的一维数组
np.ones(shape)       --生成一个全1的shape形状的数组
np.zeros(shape)        --生成一个全0的shape形状的数组
np.full(shape,values)  --生成一个都是value的shape形状的数组
np.eye(n)              -- 生成一个n阶单位矩阵
np.ones_like(a)     --生成一个类似于a的全1数组
np.zeros_like(a)    --生成一个类似于a的全0数组
np.full_like(a,val)   --生成一个类似于a的指定value值的数组
np.linspace(a,b,n,endpoint=False)   根据起始数据等间距的填充n合格数据,通过参数设置最后一个数据是否在生成的队伍中
np.concatenate((a,b))   将a与b两个数组合并在一起
  1. 使用字节流创建数组
  2. 从文件中读取特定格式,创建数组
数组对象的属性
.ndim数组对象的尺维度a.ndim
.shape数组对象的尺度,对于矩阵n*ma.shape
.size数组对象元素的大小,共多少个元素a.size
.dtype数组对象中元素的类型a.dtype
.itemsize数组对象中每个元素的大小,以字节为单位a.itemsize
数组对象维度的变换

对于定义好的数组,可以进行维度的变换

.reshape(shape)不改变原数组a.reshape((3,4))
.resize(shape)修改原数组a.resize((3,4))
…swapaxes(ax1,ax2)将数组对象的两个维度进行调换a.swapaxes(0,1)
.flatten()对数组进行降维,返回一维数组,原数组不变a.flatten()
数组元素类型的变换

对于定义好的数组,可以进行数组元素类型的变换

.astype(newtype)astype方法一定会创建一个新的数组,即使两个类型一致a.astype(np.int)
.tolist()数组向列表的转换a.tolist()
数组的索引与切片

索引:获得特定位置数组元素的过程
切片获得数组的子数组的过程

维度索引切片
一维数组a[n]a[::]
多维数组a[x,y,z]a[ : : , : : , : : ]
数组的运算
  1. 数组与标量之间的运算
    数组与标量之间的运算作用于数组的每一个元素
  2. Numpy的一元函数
np.abs(x) ,np.fabs(x)计算绝对值
np.sqrt(x)计算各组元素的平方根
np.square(x)计算各组元素的平方
np.log(x) ,np.log10(x) ,np.log2(x)计算各组元素的对数值
np.ceil(x),np.floor(x)计算各组元素的ceiling值或者是floor值
np.rint(x)计算各组元素的四舍五入值
np.modf(x)将各组元素的小数与整数部分以两个独立的形式返回
np.cos(x) np.cosh(x)计算各组元素的三角函数值
np.exp(x)计算各组元素的指数值
np.sign(x)计算各组元素的符号1(+),-1(-),0
  1. Numpy的二元函数
+ - * / **将链各个数组各元素进行相应运算
np.maximun(x,y),np.minimum(x,y),np.fmax(),np.fmin()元素级的最大最小值
np.mod(x,y)元素级的模运算
np.copysign(x,y )将数组y中各元素值的符号赋值给数组x对应元素
> < >= <= != ==算术比较,产生布尔型结果
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值