学员笔记||Python数据分析之:numpy入门(一)

2017 年 9 月 28 日 七月在线实验室 学员笔记

 (点击上方公众号,快速关注一起学AI)


写在最前

这是我学<Python数据分析>时整理出来的numpy基础速读笔记,内容大致分为:Numpy简介,ndarray对象的构建,以及对ndarray属性的理解。欢迎找茬&可劲拍砖!



Numpy简介
Numpy Python 下的一个 library

numpy最主要的是支持矩阵操作与运算

非常高效是numpy的优势,coreC编写。提升了python的处理效率

numpy是一些与比较流行的机器学习框架的基础。

 

名词解释:ndarraynumpy的核心数据类型,即(n-dimensional array)多维数组

tensorflow中的tensor(张量),它本质上也多维数组,但这个名字很高大上。因此,理解多维数组对之后的机器学习会有很大帮助。

导入

import numpy as np

使用帮助

dir(np)


构建ndarray

从Python数组构建


l1=[1,2,3,4,5]

print (type(l1))

l2=np.array(l1)

print (type(l2))

l3=list(l2) # ndarray转为Python list

print (type(l3))


构建一维数组


n1=np.array([1,2,3])

n1.shape


构建二维数组


n2= np.array([[1,2,3],[4,5,6]])

n2.shape


快速构建ndarray

序列创建:


np.arange(15)#类似于python中的range,创建一个第一个维度为15ndarray对象。

np.arange(2,3,0.1)   #起点,终点,步长值。含起点值,不含终点值。

np.linspace(1,10,10) #起点,终点,区间内点数。起点终点均包括在内。

np.arange(0,1,0.1) #01之间步长为0.1的数组数组中不包含1  

np.linspace(0, 1, 5) # 开始:0 结束1, 元素数 5

 

填充创建:


np.zeros((2,3)) #创建一个全零的,2x3的矩阵, 注意:传入参数是一个tuple,因此别忘了()

np.ones((2,3)) #创建一个全为1的,2x3的矩阵

 

np.identity(5) #方阵identity(),只需要一个参数,建立n*n的方阵

a = np.random.rand(5,5)#指定数字矩阵fill()函数

a.fill(7)

a

np.empty((6,6))#空的ndarray,指定其shape即可,注意:空不意味着值为0,而是任何的value,内存中没有被初始化的。

np.eye(3)# 对角线矩阵

np.random.rand(3,2) #随机数矩阵:

 

关于随机数方法:

rand:返回均匀分布随机数

randn:返回服从正态分布的随机数 


numpy数据类型及转换


d1=np.array([1,2,3,4,5])

print(d1)

pint(d1.dtype) # Numpy会自动根据ndarray对象中的值判定数据类型,这里为整型。

d1.astype(np.float32)# 如果想把它强制转为浮点型,可以用astype函数转换。

np.random.rand((3,2)dtype=np.float32)# 也可以在创建ndarray时,即指定其数据类型


#numpy数据类型参考


类型

类型代码

说明

int8uint8

i1u1

有符号和无符号8位整型(1字节)

int16uint16

i2u2

有符号和无符号16位整型(2字节)

int32uint32

i4u4

有符号和无符号32位整型(4字节)

int64uint64

i8u8

有符号和无符号64位整型(8字节)

float16

f2

半精度浮点数

float32

f4f

单精度浮点数

float64

f8d

双精度浮点数

float128

f16g

扩展精度浮点数

complex64

c8

分别用两个32位表示的复数

complex128

c16

分别用两个64位表示的复数

complex256

c32

分别用两个128位表示的复数

bool

?

布尔型

object

O

python对象

string

Sn

固定长度字符串,每个字符1字节,如S10

unicode

Un

固定长度Unicode,字节数由系统决定,如U10


ndarray基本属性


ndarray.ndim

查看ndarraydimension维度数。

n1=np.identity(5)

n1.ndim


ndarray.shape


查看ndarrayshape形状,返回值 是一个tuple,当维数为2维时,返回的是行数、列数、……数组的各个维(注意和维和维数要区分开)。它是一个数组各个维的长度构成的整数元组。对nm列矩阵而言,shape将是(n,m)。因此,shape元组的长度也就是rank,也是维数ndim

ndarray.dtype

查看ndarray对象的数据类型


ndarray.size


查看ndarray对象中元素的数量

 

———未完待续———


小七透露下:下篇笔记是关于ndarray的访问与设置哒。欢迎同学们投稿/提建议。

投稿请联系微信号:julyedukefu(稿件一经采用,你将收获高额稿酬&专属学习大礼包)


戳原文,更有料!
登录查看更多
7

相关内容

【2020新书】从Excel中学习数据挖掘,223页pdf
专知会员服务
90+阅读 · 2020年6月28日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
266+阅读 · 2020年6月10日
最新《自动微分手册》77页pdf
专知会员服务
100+阅读 · 2020年6月6日
【经典书】Python数据数据分析第二版,541页pdf
专知会员服务
193+阅读 · 2020年3月12日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
22+阅读 · 2019年11月7日
一文读懂PyTorch张量基础(附代码)
数据派THU
6+阅读 · 2018年6月12日
实战 | 用Python做图像处理(三)
七月在线实验室
15+阅读 · 2018年5月29日
实战 | 用Python做图像处理(二)
七月在线实验室
17+阅读 · 2018年5月25日
一文让你入门CNN,附3份深度学习视频资源
机器学习算法与Python学习
12+阅读 · 2018年3月10日
python数据分析师面试题选
数据挖掘入门与实战
6+阅读 · 2017年11月21日
python pandas 数据处理
Python技术博文
4+阅读 · 2017年8月30日
Arxiv
5+阅读 · 2019年4月8日
W-net: Bridged U-net for 2D Medical Image Segmentation
Arxiv
19+阅读 · 2018年7月12日
Arxiv
3+阅读 · 2018年4月5日
VIP会员
相关VIP内容
【2020新书】从Excel中学习数据挖掘,223页pdf
专知会员服务
90+阅读 · 2020年6月28日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
266+阅读 · 2020年6月10日
最新《自动微分手册》77页pdf
专知会员服务
100+阅读 · 2020年6月6日
【经典书】Python数据数据分析第二版,541页pdf
专知会员服务
193+阅读 · 2020年3月12日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
22+阅读 · 2019年11月7日
相关资讯
一文读懂PyTorch张量基础(附代码)
数据派THU
6+阅读 · 2018年6月12日
实战 | 用Python做图像处理(三)
七月在线实验室
15+阅读 · 2018年5月29日
实战 | 用Python做图像处理(二)
七月在线实验室
17+阅读 · 2018年5月25日
一文让你入门CNN,附3份深度学习视频资源
机器学习算法与Python学习
12+阅读 · 2018年3月10日
python数据分析师面试题选
数据挖掘入门与实战
6+阅读 · 2017年11月21日
python pandas 数据处理
Python技术博文
4+阅读 · 2017年8月30日
Top
微信扫码咨询专知VIP会员