📅  最后修改于: 2023-12-03 15:03:18.833000             🧑  作者: Mango
在数据科学和机器学习中,经常需要对数据进行随机抽样。Numpy是一个强大的科学计算库,提供了众多的随机抽样函数,其中包括numpy.random.sample
函数。在本文中,我们将探讨numpy.random.sample
函数的用途、语法和实用技巧。
numpy.random.sample
函数用于返回一个指定形状的随机样本。这个函数的作用类似于numpy.random.rand
函数,但这两个函数的语法有所不同。numpy.random.sample
函数可以接收一个或多个整数、元组或者整数列表作为参数,用于指定样本的形状。当参数为空时,函数返回一个随机实数。
以下是numpy.random.sample
函数的标准语法:
numpy.random.sample(size=None)
size
参数指定样本的形状。它可以是一个整数、元组或整数列表,用于指定返回数组的形状。如果省略了size
参数,则返回一个随机实数。
import numpy as np
# 返回一个随机实数
x = np.random.sample()
print(x)
# 返回一个形状为(3, 2)的随机样本
x = np.random.sample((3, 2))
print(x)
# 返回一个形状为[2, 3, 4]的随机样本
x = np.random.sample([2, 3, 4])
print(x)
输出:
0.7755529463425446
[[0.48237992 0.28648844]
[0.03827602 0.52734779]
[0.03031919 0.56942792]]
[[[0.64249049 0.28847107 0.83189743 0.53670347]
[0.40867944 0.57089112 0.86937037 0.51349328]
[0.63797251 0.34866339 0.62445593 0.03394225]]
[[0.69368917 0.73157393 0.52851207 0.6662679 ]
[0.85054562 0.44659861 0.862634 0.30212864]
[0.313032 0.48754289 0.38241194 0.18625868]]]
使用numpy.random.sample
函数生成随机矩阵是很常见的用法。下面是一个使用numpy.random.sample
函数生成$3 \times 3$矩阵的例子。
import numpy as np
# 生成一个3 * 3的随机矩阵
mat = np.random.sample((3, 3))
print(mat)
输出:
[[0.21192399 0.40792614 0.77372586]
[0.66553438 0.83283175 0.23208812]
[0.93758112 0.50071263 0.48928661]]
使用numpy.random.sample
函数可以生成随机图像。下面是一个用于生成$256 \times 256$大小的灰度图像的例子。
import numpy as np
import matplotlib.pyplot as plt
# 生成256 * 256大小的灰度图像
img = np.random.sample((256, 256))
plt.imshow(img, cmap='gray')
plt.show()
输出:
将numpy.random.sample
函数和其他numpy的函数组合使用,可以生成随机数据集。例如下面的例子中,我们使用numpy.random.sample
函数生成一个包含100个样本的,每个样本含有3个特征的随机数据集。
import numpy as np
# 生成一个包含100个样本,每个样本有3个特征的随机数据集
X = np.random.sample((100, 3))
print(X)
输出:
[[0.89044765 0.75816115 0.52374818]
[0.30464411 0.55321365 0.70887152]
[0.16060244 0.04008391 0.3102304 ]
[0.9179936 0.74356306 0.99624664]
[0.40945911 0.52927263 0.74902806]
...
[0.05753238 0.25900537 0.22678749]
[0.44149006 0.96552132 0.48323042]
[0.08503345 0.42583288 0.80439881]
[0.34456592 0.7731249 0.88580228]
[0.90905914 0.24651571 0.4422472 ]]
以上就是numpy.random.sample
函数的介绍、语法和实用技巧。这个函数功能强大、使用方便,是数据科学和机器学习中不可或缺的工具。在实际工作中,我们可以根据自己的需求选择不同的参数来生成随机样本、随机矩阵、随机图像等。