numpy
numpy提供了一种数组类型,高维数组,提供了数据分析的运算基础(业务表一般就是二维)
import numpy as np
导入numpy库,并查看numpy版本
np._version_
创建array
数据类型一致的一个连续的内存空间,python的列表list不要求数据类型一致
numpy的设计初衷是用于运算的,所以对数据类型进行统一化
如果传进来的列表包含不同的类型,则统一为同一类型,优先级:str>float>int
创建一个numpy的数组
array = np.array([1])
参数介绍:
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
- dtype数据类型,可选
- copy对象是否需要复制,可选
- order创建数组的样式,C为行方向,F为列方向,A为任意方向(默认)
- subok默认返回一个与基类类型一致的数组
- ndmin指定生成数组的最小维度
创建高维数组
1. * np.ones(shape,dtype=None,order='C')
以1填充的数组
shape =(m,n) m行n列 二维数组
shape = (m) m个元素的一维数组
shape = (m,) m个元素的一维数组
shape = (m,1) m行1列的二维数组
shape = (1,n) 1行n列的二维数组
`#构造一个5行3列的二维数组`
np.ones(shape=(5,3),dtype=np.int(8))
#构造一个长度为3的一维数组
np.ones(shape=(3))
2. * np.zeros(shape,dtype=float,order='C')
以0填充数组
3. * np.full(shape,fill_value,dtype=None,order='C')
fill_value是填充值,填充值填充数组
4. * np.eye(N,M=None,k=0,dtype=float)
单位矩阵的构造方式
对角线为1其他位置为0
N控制阶数,M和N默认相等,k控制对角线位移
5. np.linspace(start,stop,num=50,endpoint=True,retstep=False,dtype=None)
生成等差数列方法一
七时至,终止值,个数
np.linspace(0,10,10,endpoint=False)生成一个从0到9(因为endpoint为False)的等差数列,一共十个数
6. np.arrange([start,] stop, [step,] dtype=None)
生成等差数列方法二
七十至,终止值,步长
np.arrange(0,10,step=1)
生成一个0-9的数组
7. np.random.randint(low,high=None,size=None,dtype='|')
size相当于shape
生成随机整数
np.random.randint(0,100,size=(5,5))
8.正态函数分布
- np.randaom.randn(d0,d1,...,dn)标准正态分布
- np.random.normal()普通正态分布
标准
np.random.randn(3,5)
普通
np.random.normal(loc=170,scale=5,size=(5,3))
loc数学期望,scale方差
9. np.random.random(size=None)
生成0-1的随机小数,左闭右开
np.random.random(size=100)
np.random.random(5,3)
10. np.random.permutation(10)
生成0-9的随机无序整数索引
标签:数据分析,None,进阶,dtype,random,shape,数组,np From: https://www.cnblogs.com/fklife/p/18205606