python - numpy.choice 与 numpy.randint 有何不同?
问题描述
我需要从长度为 n 的数组 A 中进行替换采样。我想知道以下两个命令有何不同。如果他们都给出相同的结果哪个更好(在性能等方面......)
A[np.random.randint(0, n, n)]
A[np.random.choice(n, n)]
解决方案
选择的目的是对数组进行采样,给它一个整数是给它一个整数长度范围的捷径。因此,如果您以自己的方式滥用选择,则 randint 可能会更有效率。
然而,正确的做法是np.random.choice(A, size=n)
。这正是您拼写“带有替换的样本”的方式。
推荐阅读
- c# - 我只需要输出在此控制台应用程序中打印的最后一个 int。我正在使用 foreach 循环。C# 控制台应用程序
- ios - 如何在 Swift 中对 SKStoreReviewController 进行单元测试
- javascript - 从数组中的对象获取布尔值,然后为其分配一个 DOM 属性
- ruby-on-rails - Rails,用 ID 初始化对象并保留它
- c# - Page_Load 事件只触发一次
- json - 选择和过滤数组中的最新元素
- python-3.x - Mailgun talon 匹配很少的电子邮件签名
- python - 如何使用 pymodbus TCP 库获取浮点值?
- new-operator - 我们可以在构造函数中调用 await 吗?
- c# - 使用 C# 获取共享邮箱的用户