数据分析师-Numpy基础

作者: 茶小美 | 来源:发表于2019-02-25 13:57 被阅读23次

索引永远都用中括号

(行,列)

一、Numpy数据结构

1.创建numpy的方法:

(1)np.array()函数,里面可以是生成器、列表、元组、数组

(2)np.arange(10):数组生成器,类似range左闭右开 有步长 切片

(3)二维数组:np.array([[1,2,3],[4,5,6]])

(4)简便生成数组的方法:np.random.rand(10).reshape(2,5)2行5列的数组

(5)生成均匀样本的数组:np.linspace(开始,结束,num=间隔,endpoint=true,restep=False)

endpoint默认是true,右闭;retstep默认是false,true返回元组数据,第一部分是结果第二部分步长

(6)np.zeros()/np.ones():生成元素为0/1的数组 np.zeros((3,5),dtype=np.int64)创建多维

(7)np.zeros_like(ar)/np.ones_like(ar):生成和ar形状一样的元素为0/1的数组

(8)np.eye(5):生成N*N矩阵的对角线为1,其他为0的数组

注意:如果两行数组的个数不同就无法形成二维,而会变成一维数组

2.numpy的方法

ar.ndim:查看轴(几维) ar.shape:行列维度  ar.size:共多少元素  ar.dtype:里面的数值类型  type(ar):ar变量的类型

3.numpy通用函数

(1)数组形状:ar.T转置,一维数组不变,二维数组变化

(2)np.reshape(ar,(2,3)) 或   np.arange(10).reshape(5,2) --都生成新数组

(3)np.resize(ar,(2,3)) 或 np.arange(10).resize(12) --可以元素和数组行列个数不同,但是会顺序排序

(4)数组的复制:.copy()

(5)数组类型转换:ar.astype(np.int64)

(6)数组堆叠

a、列之间的堆叠,条数不变,标签改变np.hstack(ar1,ar2)

b、行之间的堆叠,条数改变,标签不变np.vstack(ar1,ar2)

c、np.stack((ar1,ar2), axis=0行连接/1先把要堆叠的本身变成反向在横向堆叠,列连接)

(7)数组拆分 np.hsplit(ar,2)拆分两列, np.vsplit(ar,2)拆分两行

(8)数组的运算

ar.std()标准差、ar.var()方差、

print(ar.sum(), np.sum(ar,axis=0),np.sum(ar,axis=1))#求和,np.sum(axis=0按列求和 axis=1按行求和)

print(np.sort(np.array([1,2,4,5,2,1])))#排序

4.numpy的索引及切片

(1)一维数组的索引和切片与列表类似

(2)二维数组:ar是个4*4的二维数组

ar[2][3]、ar[2,3]:索引为2行3列的数据 ar[:2,2:]:索引为0,1行2列-最后列的数据  ar[:,-1]:索引为最后列

(3)三维数组:ar = np.arange(12).reshape(3,2,2)#三个2*2的二维数组  ar[2][1][1]第三个二维数组中索引为1行1列的数据

(4)布尔型的索引和切片:以布尔型的矩阵做筛选

ar = np.arange(12).reshape(3,4)

i = np.array([True,False,True])    j = np.array([True,True,False,False])

print(ar[i,:])#或print(ar[i])第一个是行,第二行是列

print(ar[:,j])

print(ar>5,type(ar>5)) 返回布尔型

print(ar[ar>5])#返回数值,pandas不同之处在于为False会填充NaN

(5)数组索引和切片的更改及赋值:与列表类似

5.numpy的随机数

(1)np.random.normal(size=(4,4)) --标准正态分布

(2)np.random.rand(4)生成一维数组(4,4)生成二维数组  --0-1之间的随机浮点数--均匀分布

(3)np.random.randint(low,high,size=n)--生成size个(可以定义多维)随机整数,左闭右开

例:np.random.randint(2,10,size=(2,3))

(4)np.random.randn--0-1之间的正态分布

6.存储数组数据

(1)存成.npy文件:np.save(文件名,数据)

(2)存成文本文件:np.savetxt(文件名,数据,delimiter = ',',fmt='.2f')--需要delimiter参数定义如何分割,fmt格式化

7.读取数组数据

(1)np.load(文件名)

(2)np.loadtxt(文件名,delimiter=',')--识别符

相关文章

  • 数据分析师-Numpy基础

    索引永远都用中括号(行,列) 一、Numpy数据结构 1.创建numpy的方法: (1)np.array()函数,...

  • 数据分析指导产品设计

    数据分析师的角色定位和基础技能 ♦ 青铜数据分析师: ♦ 白银数据分析师: ♦ 黄金数据分析师:

  • Numpy库(一)- 数组的创建

    1 Numpy预备基础知识: 1.1 Numpy数据类型: ​ 1.2 Numpy数组属性: ​ 1.2.1 各个...

  • 矩阵计算库numpy

    numpy的基础结构和矩阵基础: 文末附有源代码及视频教程 1、numpy.genfromtxt()读入txt数据...

  • 优达学城--机器学习入门

    第4部分:数据分析基础 4.4 使用numpy和pandas分析数据 += 与 +的区别: 4.4 使用numpy...

  • numpy、pandas基础

    数据分析基础知识点 -- numpy and Pandas 1.numpy: 适合处理统一的数值数组数据 -- n...

  • Python数据处理 | Numpy知识笔记

    写在最前的话 Numpy是数据科学计算的基础模块,用于数值计算。Numpy基于数组计算,比Python自带的数据结...

  • Numpy随笔

    Numpy NumPy是SciPy、Pandas等数据处理或科学计算库的基础 NumPy是一个开源的Python科...

  • 97、NumPy基础

    NumPy是高性能科学计算和数据分析的基础包 NumPy在数据分析中常用的功能: 1、用于数据整理和清理、...

  • 大数据基础知识储备

    新手学习大数据需要具备基础一数学知识数学知识是数据分析师的基础知识。对于初级数据分析师,了解一些描述统计相关的基础...

网友评论

    本文标题:数据分析师-Numpy基础

    本文链接:https://www.haomeiwen.com/subject/zaswyqtx.html