终于步入正文
本篇文章先介绍数据分析三剑客里面的第一个工具: numpy
首先稍微介绍下什么是numpy
numpy系统是Python的一种开源的数值计算扩展
一个强大的N维数组对象Array
比较成熟的函数库实用的线性代数、傅里叶变换和随机数生成函数
numpy和稀疏矩阵运算包scipy配合使用更加强大
废话不多说, 先上图
![7102a99cbb354bc50f4e675457fa28a9.png](https://i-blog.csdnimg.cn/blog_migrate/4d06cc0bf7e585ded715a7796e8f4241.jpeg)
numpy
安装, 导库
pip install numpy -i https://pypi.douban.com/simple
tips: 对于体积非常大的第三方库, 我们可以指定一下国内的安装源, 比如清华的源, 豆瓣的源, 我这里指定的是豆瓣的源, 下载速度杠杠的, 用法也非常简单, 只需要在库后面跟上空格, 加上-i https://pypi.douban.com/simple 就OK啦
导库并检查下版本:
import numpy as np
np.__version__
![a44ac1cb75157fca4ec45fc1aa805d8a.png](https://i-blog.csdnimg.cn/blog_migrate/249248bb106b0362d9c8af073b0b06ee.jpeg)
导库
创建ndarray
老规矩, 先上图
![c52db65ae931175edb48a3f9bbbcf30b.png](https://i-blog.csdnimg.cn/blog_migrate/97efc50792757573ad51ca93b678a81a.jpeg)
创建ndarray
# 创建全是1的ndarray,默认为float64类型
np.ones(shape=(4,5))
# 创建全是0的ndarray
np.zeros(shape=(3,4))
# 使用指定的元素填充
np.full(shape=(4,5),fill_value=8)
![73eff6ba0f5aeadee8e011caca053397.png](https://i-blog.csdnimg.cn/blog_migrate/6ec179fb59706885a62b2fa213194308.jpeg)
# 生成对角线上全是1,其他位置全是0的二维ndarray
np.eye(8,k=0)
# 等分一个范围
np.linspace(0,100,num=51,endpoint=False,retstep=True)
![4ca57db072108fc504371ce42a272a01.png](https://i-blog.csdnimg.cn/blog_migrate/e1310370b36ab62726b71ee66f0b5925.jpeg)
# 和python的range一样
np.arange(0,100,step=3)
# 全是整数的ndarray,左闭右开的区间
np.random.randint(0,150,size=(4,6,3))
![5c6d37a08916a150997146419ef9e71d.png](https://i-blog.csdnimg.cn/blog_migrate/2ad42740028bbf2c340ecfc333be0ee8.jpeg)
# 平均值为0,方差为1的正态分布
np.random.randn(3,4,5,6)
![7250e2824f8e828c6b503f4809245624.png](https://i-blog.csdnimg.cn/blog_migrate/8a02a42f014c88c4db6b6eea4c3a30c7.jpeg)
# 正态分布
np.random.normal(loc=10,scale=2,size=(10000,10000))
# 生成0到1的随机数,左闭右开
np.random.random(size=(3,4,5))
![ea822dc909cd993a6004c04bd5309424.png](https://i-blog.csdnimg.cn/blog_migrate/aca426a14d5bfcd12497dfa4296d5800.jpeg)
查看ndarray的属性
4个必记参数, 用的非常的频繁:
ndim:维度
shape:形状(各维度的长度)
size:总长度
dtype:元素类型
未完待续......