如何用python生成随机的15行6列的随机数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用python生成随机的15行6列的随机数据相关的知识,希望对你有一定的参考价值。
用python生成随机的15行6列的随机数据的方法如下:1.import numpy as np # 定义从正态分布中获取随机数的函数 def get_normal_random_number(loc, scale): """ :param loc: 正态分布的均值 :param scale: 正态分布的标准差 :return:从正态分布中产生的随机数 """ # 正态分布中的随机数生成 number = np.random.normal(loc=loc, scale=scale) # 返回值 return number # 主模块 if __name__ == "__main__": # 函数调用 n = get_normal_random_number(loc=2, scale=2) # 打印结果 print(n) # 结果:3.275192443463058
2 从给定参数的均匀分布中获取随机数的函数
考虑从均匀分布中获取随机数的时候,要事先知道均匀分布的下界和上界,然后调用Numpy模块的random.uniform函数生成随机数。
import numpy as np # 定义从均匀分布中获取随机数的函数 def get_uniform_random_number(low, high): """ :param low: 均匀分布的下界 :param high: 均匀分布的上界 :return: 从均匀分布中产生的随机数 """ # 均匀分布的随机数生成 number = np.random.uniform(low, high) # 返回值 return number # 主模块 if __name__ == "__main__": # 函数调用 n = get_uniform_random_number(low=2, high=4) # 打印结果 print(n) # 结果:2.4462417140153114
3 按照指定概率生成随机数
有时候我们需要按照指定的概率生成随机数,比如已知盒子中每种颜色的球的比例,猜测下一次取出的球的颜色。在这里介绍的问题和上面的例子相似,要求给定一个概率列表,从列表对应的数字列表或区间列表中生成随机数,分两部分讨论。 参考技术A .Python自带的random库
1.参生n--m范围内的一个随机数: random.randint(n,m)
2.产生0到1之间的浮点数: random.random()
3.产生n---m之间的浮点数: random.uniform(1.1,5.4)
4.产生从n---m间隔为k的整数: random.randrange(n,m,k)
5.从序列中随机选取一个元素: random.choice([1, 2, 3, 4, 5, 6, 7, 8, 9, 0])
6.在一些特殊的情况下可能对序列进行一次打乱操作: random.shuffle([1,3,5,6,7])
import random
# 产生 1 到 10 的一个整数型随机数
print( random.randint(1,10) )
# 产生 0 到 1 之间的随机浮点数
print( random.random() )
# 产生 1.1 到 5.4 之间的随机浮点数,区间可以不是整数
print( random.uniform(1.1,5.4) )
# 从序列中随机选取一个元素
print( random.choice([1, 2, 3, 4, 5, 6, 7, 8, 9, 0]) )
# 生成从1到100的间隔为2的随机整数
print( random.randrange(1,100,2) )
# 将序列a中的元素顺序打乱
a=[1,3,5,6,7]
random.shuffle([1,3,5,6,7])
print(a)
二.numpy库
1.产生N维的均匀分布的随机数: np.random.rand(d1,d2,d3,...,dn)
2.产生n维的正态分布的随机数: np.random.randn(d1,d2,d3,...,dn)
3.产生n--m之间的k个整数:np.random.randint(n,m,k)
4.产生n个0--1之间的随机数: np.random.random(10)
5.从序列中选择数据: np.random.choice([2,5,7,8,9,11,3])
6.把序列中的数据打乱:np.random.shuffle(item)
import numpy as np
#产生n维的均匀分布的随机数
print(np.random.rand(5,5,5))
#产生n维的正态分布的随机数
print(np.random.randn(5,5,5))
#产生n--m之间的k个整数
print(np.random.randint(1,50,5))
#产生n个0--1之间的随机数
print(np.random.random(10))
#从序列中选择数据
print(np.random.choice([2,5,7,8,9,11,3]))
#把序列中的数据打乱
#np.random.shuffle(item) 不会参数返回值,改变的话是在原列表中修改的
item = [2,5,7,8,9,11,3]
np.random.shuffle(item)
print(item) 参考技术B 从给定参数的正态分布中生成随机数 当考虑从正态分布中生成随机数时,应当首先知道正态分布的均值和方差(标准差),有了这些,就可以调用python中现有的模块和函数来生成随机数了。这里调用了Numpy模块中的random.normal函数,由于逻辑非参简单,所有直接贴上代码如下: import numpy as np # 定义从正态分布中获取随机数的函数 def get_normal_random_number(loc, scale): """ :param loc: 正态分布的均值 :param scale: 正态分布的标准差 :return:从正态分布中产生的随机数 """ # 正态分布中的随机数生成 number = np.random.normal(loc=loc, scale=scale) # 返回值 return number # 主模块 if __name__ == "__main__": # 函数调用 n = get_normal_random_number(loc=2, scale=2) # 打印结果 print(n) # 结果:3.275192443463058 2 从给定参数的均匀分布中获取随机数的函数 考虑从均匀分布中获取随机数的时候,要事先知道均匀分布的下界和上界,然后调用Numpy模块的random.uniform函数生成随机数。 参考技术C 从给定参数的正态分布中生成随机数 当考虑从正态分布中生成随机数时,应当首先知道正态分布的均值和方差(标准差),有了这些,就可以调用python中现有的模块和函数来生成随机数了。这里调用了Numpy模块中的random.normal函数,由于逻辑非参简单,所有直接贴上代码如下: import numpy as np # 定义从正态分布中获取随机数的函数 def get_normal_random_number(loc, scale): """ :param loc: 正态分布的均值 :param scale: 正态分布的标准差 :return:从正态分布中产生的随机数 """ # 正态分布中的随机数生成 number = np.random.normal(loc=loc, scale=scale) # 返回值 return number # 主模块 if __name__ == "__main__": # 函数调用 n = get_normal_random_number(loc=2, scale=2) # 打印结果 print(n) # 结果:3.275192443463058 2 从给定参数的均匀分布中获取随机数的函数 考虑从均匀分布中获取随机数的时候,要事先知道均匀分布的下界和上界,然后调用Numpy模块的random.uniform函数生成随机数。
如何用C语言 写一个随机数生成器的程序
1到100之间的随机整数 可以重复 谢谢了
参考技术A #include <stdio.h>#include <time.h>
void main()
int iNum = 0;
srand((unsigned)time(0));
iNum = rand() % 100 + 1; //随机生成一个数,并对100取余,使它小于100(0~99)。再加1(1~100)
printf("%d\n", iNum); \\打印出来这个数
return;
如果想多生成几个随机数,可以有一个数组存储,并用for循环实现随机生成
int aiNum[10] = 0;
int iLoop = 0;
//随机生成10个数
for ( iLoop = 0; iLoop < 10; iLoop++ )
aiNum[iLoop] = rand() % 100 + 1;
参考技术B #include <stdio.h>
#include<stdlib.h>
#include<time.h>
main()
int a;
srand(time(0));
a=rand()%100+1;//这个a的值就是你要的随机整数
printf("%d\n",a);//打印出来试试看吧!!!祝你学习进步~~~
参考技术C #include "stdafx.h"
#include "stdlib.h"
#include "time.h"
int _tmain(int argc, _TCHAR* argv[])
srand( (unsigned)time( NULL ) );
rand() % 100 + 1; // 需要几个,就调用几次
return _tmain( argc, argv[]);
参考技术D srand((unsigned)time(NULL));
x = rand() % 100 + 1本回答被提问者采纳
以上是关于如何用python生成随机的15行6列的随机数据的主要内容,如果未能解决你的问题,请参考以下文章