python纵向数据分析_《Python数据分析》笔记1 ——Numpy

Numpy数组

1.Numpy数组对象

Numpy中的多维数组称为ndarray,他有两个组成部分。

1.数据本身

2.描述数据的元数据

2.Numpy的数值类型

bool: 布尔型

inti:其长度取决于平台的整数(通常为int32或int64)

int8:字节类型

int16:整型

int32:整型

int64:整型

uint8:无符号整型

uint16:无符号整型

uint32:无符号整型

uint64:无符号整型

float16:半精度浮点型

float32:单精度浮点型

float64或者float:双精度浮点型

complex64:复数类型

complex128或者complex:复数类型

谨记:不要把复数类型转换为整型,这会报错。,同样也不允许把复数转化为浮点数。

3.一维数组的切片与索引

一维数组Numpy数组的切片操作与Python列表的切片一样。

In:a=np.arange(9)

In:a[3:7]

Out:array([3,4,5,6])

In:a[:7:2]

Out:array([0,2,4,6])

4.处理数组形状

可以利用以下函数处理数组的形状

1.拆解:可以用ravel()函数将多维数组变成一维数组,a.ravel()

2.拉直:flatten()函数的名字取得很贴切,其功能与ravel()相同,可是,flatten()返回的是真实的数组,需要分配新的内存空间;而ravel()函数返回的只是数组的视图

3.用元组指定数组形状:除了reshape()函数外,还可以用元组来轻松定义数组的形状。

4.转置:行变列,列变行。a.transpose()

5.调整大小:函数resize()作用类似于reshape()但是会改变所作用的数组

堆叠数组

1.水平叠加

ca9cd5993758b47965557965e312c9a8.png

用concatenate()函数也能达到同样的效果

213a10ca423b5e69c8884de36b0d3d87.png

2.垂直叠加

234b3f3bdee5fe189bff494afa04b380.png

当参数axis置为0时,concatenate()函数也会得到同样效果

157c1cc90c62c47fbc7b372574e9ffd4.png

3.深度叠加

这种方法是沿着第三个坐标轴(纵向)的方向来叠加一摞数组。

474750740bd8ab86219a367a6577720b.png

4.列式堆叠

column_stack()函数以列方式对一维数组进行堆叠

7e89465345bf5ca56b759a6cf7a84e9f.png

5.行式堆叠

7b0dd9136cba54304e71fbd82564a390.png

拆分Numpy数组

相关函数hsplit()、vsplit()、dsplit()和split()。我们既可以把数组分成相同形状的数组,也可以从规定的位置开始切取数组。

1.横向拆分

ccb2f2eac8ab75a776760816b7b22090.png

相当于调用参数axis=1的split()函数:

acb637f2b7a29614557fd120a3c2fdb6.png

2.纵向拆分

5ff60306c95da56fd570af307c774787.png

当参数axis=0,split()函数也会沿着纵轴方向分解数组

7315fd7f90b0b434293f1271cf7f60da.png

3.深度拆分

前提是必须要有深度。

6a5da36e65bc651d96ec260f05936f43.png

2dc2b444ba827b629a86d55f17ac3324.png

Numpy的数组属性

ndim:存储的是维度的数量

size:用来保存元素的数量

itemsize:可以返回数组中各个元素所占用的字节数

nbytes:整个数组所需的字节数量

T:与transpose()函数相同,转置

real:该属性返回实部

imag:该属性返回虚部

flat属性:可以返回一个numpy.flatiter对象,这是获得flatiter对象的唯一方法,但我们无法访问flatiter的构造函数。可以使用flat的迭代器来遍历数组,就像遍历“胖”数组那样

39ab856924839569388b689eb5b85ac7.png

数组的转换

1.Numpy数组转换成Python列表,使用tolist()函数

2.astype()函数可以把数组元素转换成指定类型

Numpy数组的广播

当操作对象的形状不一样时,Numpy会尽力进行处理

例如,假设一个数组要跟一个标量相乘,这时标量需要根据数组的形状进行扩展,然后才可以执行乘法运算。这个扩展的过程叫做广播。

fa9ab0f90a1bece41ebb684a31f8e857.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值