文章目录
前言
- Python四种基本数据结构类型
List,Tuple,Set,Dict
- Numpy的数据结构类型
Ndarry(多维数组)
在介绍Numpy之前,先说一下Jupyter Notebook,这是一款数据分析玩家必用的工具,其风格跟我们以往用过的软件开发IDE有很大的不同。
这里简单说一下,Data Science IDE和Code Develop IDE的有什么不同:
- 安装jupyter
pip install jupyter
在工作目录下输入,jupyter notebook,就会启动浏览器,进入进入工作界面:
在此介绍一种我常用的进入工作目录的方式:
- 鼠标点击进入工作目录
- 在文件路径处输入cmd然后回车
效果如下:
- 安装numpy
pip install numpy
一、Numpy是什么?
- 时间转换
0.000 001 毫秒 = 1纳秒
0.001 毫秒 = 1微秒
1000 毫秒 = 1秒
示例:
- array类型
- 生成10个1.0的浮点数列表
# L = [1.0 for i in range(10)]
# 等价代码如下
L1 = []
for i in range(10):
L1.append(1.0)
- numpy array 和Python List 区别是什么?
List 和array的计算效率上的差异:
(np.sum是numpy array的求和函数)
- 结论:
array类型:使用numpy求和函数时间最快:
最快是numpy中的array
其次是python中的List
最后是中间两行数据
在Python中所有的变量都是类和对象,
在Numpy中所有的变量都是C语言中的基本数据类型
为什么选择Numpy?
1.时间上优化:
底层的计算库都是C语言
它的基本类型都是C语言类型
Python:int[整形只有int]
Numpy:int8,int16,int32,int64
2.节省空间:
Python:需要添加额外的类型信息
Numpy:只需要保存数据信息
- 使用astype进行数据转换
- 32和64存储有何不同吗?(查看参数nbytes)
分析:
L:8个数,每个四个字节 4×8 = 32
L64:8个数,每个八个字节 8×8 = 64
-
若是只修改array的dtyte可不可以?
-
结论:
-
L64最开始占用64个字节,int64是8个数
-
dtype直接改为int32,还是64个字节---->16个数
-
dtype直接改为int16,还是64个字节---->32个数
-
同一个数据块,以不同的数据类型进行解析:
二、Array属性讲解
2.1 array属性含义
代码如下(示例):
import numpy as np
x = np.array([[1,2,3],[3,4,5]