Numpy科学技算库

Numpy:用于快速处理任意维度的数组,支持常见的数组和矩阵操作
Ndarray:对象是一个快速而灵活的大数据容器

  • np.array(【【】,【】】)用于存储
  • ndarray在存储数据的时候数据与数据的地址都是连续的,这样就给使得批量操作数组元素时时速度更快
  • ndarray中的所有元素的类型都是相同的,可以省掉很多的循环语句

ndarray支持并行化运算(向量化运算) ndarray的属性

ndarray的属性

数组属性反映了数组本身固有的信息。
属性名字 属性解释
ndarray.shape 数组维度的元组
ndarray.ndim 数组维数
ndarray.size 数组中的元素数量
ndarray.itemsize 一个数组元素的长度(字节)
ndarray.dtype 数组元素的类型

np.ones([几行,几列])#生成都为1的数值
np.zeros(【几行,几列】)#生成都为0的数值

生成固定范围的数组
np.linspace(start,stop,num,endpoint)
创建等差数组–指定数量
参数:
start:序列的起始值
stop:序列的终止值
num:要生成的等间隔样列数量,默认为50
endpoint:序列中是否包含stop值,默认为ture

np.arange(start,stop,step,dtype)
创建等差数组—指定步长
参数
step:步长

np.logspace(start,stop,num)
创建等比数列
参数:
num:要生成的等比数列数量,默认为50

生成随机数组

np.random模块
正态分布
正态分布是一种概率分布,正态分布是具有两个参数u和q的连续型随机变量的分布,第一个参数为u是服从正态分布的随机变量的均值,第二个参数q是此随机变量的标准差,正态分布记作N(u,q)

u决定的位置,q其标准决定的幅度

正态分布创建方式

np.random.randn(d0,d1......dn)

功能:从标准正态分布中返回一个或多个样本值

np.random.normal(loc=0.0,scale=1.0,size=None)

np.random.normal(loc=0.0,scale=1.0,size=None)

loc:float
此概率分布的均值(对应着整个分布的中心centre)
scale:float
此概率分布的标准差(对应于分布的宽度,scale越大越矮胖,scale越小,越瘦高)
size:int or tuple of ints
输出的shape,默认为None,只输出一个值
np.random.standard_normal(size = None)
返回指定形状的标准正态分布的数组

均匀分布

np.random.rand(d0,d1,dn)

np.random.rand(d0,d1,dn)
返回【0.0,1.0】内的一组均匀分布的数
np.random.uniform(low=0.0,high = 1.0,size=None)
功能:从一个均匀分布【low,high】中随机采样,注意定义域为左闭右开,即包含low,不包含high
参数:
low:采样下界,flot类型,默认值为0
high:采样上界,float类型默认为1
size:输出样本目数,为int或元组(tuple)类型,列如,size=(m,n,k),则输出mnk个样本,缺省时输出1个值
返回值ndarray类型,其形状和参数size中描述一致
np.random.randint(low,high=None,size = None,dtype=“l”)
从一个均匀分布随机采样,生成一个整数或N维整数的数组
取数范围:若high不为None时,取【low,high】之间随机整数,取值【0,low】之间随机整数

形状的修改

ndarray.reshape(shape,order)

返回一个具有相同数据域,但shape不一样的视图
行列不进行互转
在转换形状的时候一定要注意数组的元素匹配
stock_change.reshape([5,4])
stock_change.reshape([-1,10])#数组的形状被修改为:(2,10),-1:表示通过待计算

ndarray.resize(new_shape)

修改数组本身的形状(需要保持元素个数前后相同)
行列不进行互换
stock_change.shape([5,4])

ndarray.T

数组的转置
将数组的行,列进行互换

类型修改

ndarray.astype(type)

返回修改了类型之后的数组
stock_change.astype(np.int32)

ndarray.tostring([order])或者ndarray.tobytes(【order】)
构造包含数组中原始数据字节的python字节

ndarray.tostring([order])或者ndarray.tobytes([order])
构造包含数组中原始数据的python字节
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[12, 3, 34], [5, 6, 7]]])
arr.tostring()

数组的去重

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

np.unique(temp)
array([1, 2, 3, 4, 5, 6])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

枭玉龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值