博舍

Python的随机矩阵生成 python怎么随机生成数字

Python的随机矩阵生成

导入模块random模块numpy中的random函数

python中有两个模块可以生成随机数,该博客以的numpy模块为例进行生成随机数。(因为矩阵要生成大量的随机数据,故推荐使用numpy模块生成随机数)

生成随机数(以矩阵为例)#生成随机矩阵importnumpyasnp#设置随机种子,保证每次生成的随机数一样,可以不设置(去除下面一行代码,将所有的rd替换成np.random即可)rd=np.random.RandomState(888)#随机整数matrix=rd.randint(-2,3,(10,10))#随机生成[-2,3)的整数,10x10的矩阵#matrix=rd.randint(-2,3,[10,10])#效果同上#print(matrix)#随机浮点数matrix1=rd.random((5,5))#随机生成一个[0,1)的浮点数,5x5的矩阵#print(matrix1)

如果想要生成固定区间的浮点数,可以采用如下两种方法

#生成随机矩阵importnumpyasnp#设置随机种子,保证每次生成的随机数一样,可以不设置(去除下面一行代码,将所有的rd替换成np.random即可)rd=np.random.RandomState(888)#方法一matrix1=rd.random((5,5))*5-2#随机生成[-2,3)的浮点数,5x5的矩阵#方法二matrix1=rd.uniform(-2,3,(5,5))#随机生成[-2,3)的浮点数,5x5的矩阵#print(matrix1)生成固定分布的随机数#服从特定分布的随机数#生成随机矩阵importnumpyasnp#设置随机种子,保证每次生成的随机数一样,可以不设置(去除下面一行代码,将所有的rd替换成np.random即可)rd=np.random.RandomState(888)#1.均匀分布matrix_uniform=rd.uniform(-2,3,(5,5))#随机生生成[-2,3)内的均匀分布随机浮点数,5x5的矩阵#print(matrix_uniform)#2.正态分布matrix_normal=rd.normal(5,1,[5,5])#生成一个正态分布的随机数,均值为5,标准差为1,5x5的矩阵#print(matrix_normal)#3.泊松分布matrix_poisson=rd.poisson(5,(5,5))#生成一个泊松分布的随机数,均值为5,5x5的矩阵#print(matrix_poisson)#4.指数分布matrix_exponential=rd.exponential(5,[5,5])#生成一个指数分布的随机数,均值为5,5x5的矩阵#print(matrix_exponential)参考博客Python中随机数的生成python生成随机数的两种方法

python随机生成列表的五种方法

**

方法一:np.random.rand()

**导入numpy,利用库中的random下的rand函数生成0~1之间的浮点数

importnumpyasnpA=np.random.rand(10)#10是生成10个浮点数print(A)

结果:

[0.401246520.614315660.328454110.714944090.138774070.530638080.594800260.457509340.979743780.78729244]

**

方法二:np.random.randn()

**注意:一般情况下具有一定的标准正态分布,我这好像没体现,应该是我没有给他排序就画图了,所以没有体现B.sort()即可将随机生成的列表B进行顺序排序生成一个列表随机返回10个元素

importnumpyasnpimportpandasaspdimportmatplotlib.pyplotasplt#A=np.random.rand(10)#print(A)B=np.random.randn(10)print(B)plt.plot(B)plt.show()

**

方法三:np.random.randint()

注:生成上下限范围内定量的整数上下限左闭右开**

importnumpyasnpC=np.random.randint(0,10,size=10)print(C)

小插曲:返回一个范围内随机值可能值1,2,3,4,5

importnumpyasnpD=np.random.random_integers(5)print(D)

**

方法四:np.random.shuffle(x)#shuffle打乱

**

importnumpyasnpE=np.arange(10)#生成列表[1,2,3,4,5,6,7,8,9]print(E)np.random.shuffle(E)print(E)

**

方法五:

**还没想到,有知道的可以评论区留言,谢谢-_-

Python如何产生20个随机整数?

在Python中,要产生随机整数,可以使用的方法有很多,比如:生成随机不重复的整数,可以使用random中的sample;生成完全随机的整数,可以用numpy中的random.randint,接下来是具体的内容介绍。

Python产生20个随机整数的方法:

1、Python生成随机不重复的整数,用random中的sample

index=random.sample(range(0,20),20)

上面是生成不重复的20个从0-9的整数。

2、Python生成完全随机的整数,用numpy中的random.randint

index=np.random.randint(0,20,size=20)

生成的是可能会重复的20个从0-20的整数。

python随机生成多个不同的数

今天写代码的时候需要用到随机数,仅仅使用torch.randint(1,10,(4,))发现会出来相同的数。

为了得到不同的随机数,可以利用Python中的random.sample()函数。res=random.sample(range(low,high),N);#表示从[low,high]区间随机生成N个数,结果以列表返回

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇