【numpy】numpy中的一些方法

np.random.choice方法

def choice(a, size=None, replace=True, p=None)

表示从a中随机选取size个数,左闭右开。

replacement代表的意思是抽样之后还放不放回去,如果是False的话,不放回。如果是True的话,放回。

p表示每个元素被抽取的概率,如果没有指定,a中所有元素被选取的概率是相等的。

import numpy as np

a1=np.random.choice(5, 3)
a2=np.random.choice(5, 3, p=[0.1, 0, 0.3, 0.6, 0])
a3=np.random.choice(a=5, size=3, replace=False, p=None)
a4=np.random.choice(a=5, size=3, replace=False, p=[0.2, 0.1, 0.3, 0.4, 0.0])
aa_milne_arr = ['pooh', 'rabbit', 'piglet', 'Christopher']
a5=np.random.choice(aa_milne_arr, 5, p=[0.5, 0.1, 0.1, 0.3])

print("a1:\n",a1,"\n","a2:\n",a2,"\n","a3:\n",a3,"\n","a4:\n",a4,"\n","a5:\n",a5)

# a1:
#  [2 2 2]
#  a2:
#  [2 3 3]
#  a3:
#  [4 0 1]
#  a4:
#  [0 3 2]
#  a5:
#  ['pooh' 'rabbit' 'pooh' 'pooh' 'Christopher']

np.newaxis方法

np.newaxis的作用就是在这一位置增加一个一维,这一位置指的是np.newaxis所在的位置。

x1 = np.array([1, 2, 3, 4, 5])
# the shape of x1 is (5,)
x1_new = x1[:, np.newaxis]
# now, the shape of x1_new is (5, 1)
# array([[1],
#        [2],
#        [3],
#        [4],
#        [5]])
x1_new = x1[np.newaxis,:]
# now, the shape of x1_new is (1, 5)
# array([[1, 2, 3, 4, 5]])

np.random.uniform方法

函数原型:np.random.uniform(low,high,size)。

参数介绍:

low: 采样下界,float类型,默认值为0;
high: 采样上界,float类型,默认值为1;
size: 输出样本数目,为int或元组(tuple)类型,例如,size=(m,n,k), 则输出m*n*k个样本,缺省时输出1个值。

返回值:ndarray类型,其形状和参数size中描述一致。

np.squeeze方法

函数原型:np.squeeze(a,axis = None)。
1)a表示输入的数组;
2)axis用于指定需要删除的维度,但是指定的维度必须为单维度,否则将会报错;
3)axis的取值可为None 或 int 或 tuple of ints, 可选。若axis为空,则删除所有单维度的条目;
4)返回值:数组
5) 不会修改原数组;

#例1
import numpy as np

a  = np.arange(10).reshape(1,10)
# 输出
a = array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]])

a.shape
(1, 10)

b = np.squeeze(a)
# 输出
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

b.shape
(10,)

参考博客

Numpy库学习—squeeze()函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值