python - 不指定最小值和最大值的随机二维数组
问题描述
在 Python 中,有没有办法使用numpy
随机整数条目生成二维数组而不指定低或高?
我试过mat = np.random.randint(size=(3, 4))
了,但没有用。
解决方案
假设您不想指定数组的最小值或最大值,可以使用numpy.random.normal
np.random.normal(mean, standard deviation, (rows,columns))
然后用astype(np.int)
, 将其四舍五入
>>> import numpy as np
>>> mat = (np.random.normal(1, 3, (3,4))).astype(np.int)
[[ 0 0 0 -1]
[ 0 5 0 0]
[-5 1 2 2]]
请注意,输出可能会有所不同,因为这些值是随机的。
如果要指定最小值和最大值,有多种方法可以做到这一点,例如
mat = (np.random.random((3,4))*10).astype(np.int) # Random ints between 0 and 10
或者
mat = np.random.randint(1,5, size=(3,4)) # Random ints between 1 and 5
和更多。
推荐阅读
- java - Java:获取当前印度时间
- c# - 是否有一个 RegistryKey.GetValue() 参数值可用于返回已安装程序的文件路径?
- spring - Spring MVC - 如何动态加载/注入服务
- system-verilog - 什么算作虚拟接口的非法分层引用?
- angular - spyOn 模拟的函数,仍然被称为实际实现
- c# - 错误 CS5001:程序不包含适用于 .Net Core Console App 中的入口点的静态“Main”方法
- r - 按偏好分组 + 考虑的选项
- php - JWT/LARAVEL 令牌过期
- c# - 在块调度中使用 jQuery 合并 html 表格单元格
- android - 将 google_maps_flutter 颤动到现有项目中