我的Numpy

本文介绍了Numpy中的`np.in1d`函数,用于检查数组元素是否存在于另一个数组中,并探讨了其参数`assume_unique`和`invert`的影响。此外,还讲解了如何使用`np.random.randint`进行随机抽样,以及`np.concatenate`和`np.stack`在数组拼接中的应用,与PyTorch的`torch.cat`和`torch.stack`进行了对比。
摘要由CSDN通过智能技术生成

记录一些Numpy的奇奇怪怪的方法和函数

np.in1d

查看数组1(数组2)的某元素是否存在与数组2(数组1)

ar1 = np.array([1,2,3])
ar2 = np.array([3,2,1])
a = np.in1d(ar1, ar2, assume_unique=False, invert=False)
print(a) # [ True  True  True]

ar1 = np.array([1,2,3])
ar2 = np.array([3,2,1])
a = np.in1d(ar1, ar2, assume_unique=False, invert=True)
print(a) # [False False False]

ar1 = np.array([1,2,3])
ar2 = np.array([3,2,1])
a = np.in1d(ar1, ar2, assume_unique=True, invert=True)
print(a) # [False False False]

ar1 = np.array([8,100,2,3])
ar2 = np.array([3,2,1])
a = np.in1d(ar1, ar2, assume_unique=False, invert=False)
print(a) # [False False  True  True]

ar1 = np.array([8,100,2,3])
ar2 = np.array([3,2,1])
a = np.in1d(ar1, ar2, assume_unique=False, invert=True)
print(a) # [ True  True False False]

ar1 = np.array([8,100,2,3])
ar2 = np.array([3,2,1])
a = np.in1d(ar1, ar2, assume_unique=True, invert=True)
print(a) # [ True  True False False]

Numpy随机抽取

按照从0到k的范围取样取出num个整数,返回一个list,

randient似乎有整数的意思

np.random.randint(0, k, num)
result = random.randint(1,10)      #返回 [1, 10] 之间的任意整数

从列表中抽取3个元素

x = np.random.choice([], k=3)

要想不重复,

x = np.random.choice([], k=3,repalce=False)

从0到k的范围中抽取n个数字,允许重复

a = np.random.randint(k, size=n)

np.concatenate & np.stack

这区别和 torch.cat 与 torch.stack 如出一辙

np.concatenate就可以看作是torch.cat,np.stack可以看做是torch.stack

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值