python随机生成一个数字_python随机生成
在数据分析中,数据的获取是第一步,numpy.random 模块提供了非常全的自动产生数据API,是学习数据分析的第一步。
总体来说,numpy.random模块分为四个部分,对应四种功能:
简单随机数: 产生简单的随机数据,可以是任何维度
排列:将所给对象随机排列
分布:产生指定分布的数据,如高斯分布等
生成器:种随机数种子,根据同一种子产生的随机数是相同的
1. 生成器
电脑产生随机数需要明白以下几点:
随机数是由随机种子根据一定的计算方法计算出来的数值。所以,只要计算方法一定,随机种子一定,那么产生的随机数就不会变。
只要用户不设置随机种子,那么在默认情况下随机种子来自系统时钟(即定时/计数器的值)
随机数产生的算法与系统有关,Windows和Linux是不同的,也就是说,即便是随机种子一样,不同系统产生的随机数也不一样。
numpy.random 设置种子的方法有:
函数名称函数功能参数说明
RandomState
定义种子类
RandomState是一个种子类,提供了各种种子方法,最常用seed
seed([seed])
定义全局种子
参数为整数或者矩阵
2. 简单随机数
函数名称函数功能参数说明
rand(d0, d1, …, dn)
产生均匀分布的随机数
dn为第n维数据的维度
randn(d0, d1, …, dn)
产生标准正态分布随机数
dn为第n维数据的维度
randint(low[, high, size, dtype])
产生随机整数
low:最小值;high:最大值;size:数据个数
random_sample([size])
在[0,1)内产生随机数
size:随机数的shape,可以为元祖或者列表,[2,3]表示2维随机数,维度为(2,3)
random([size])
同random_sample([size])
同random_sample([size])
ranf([size])
同random_sample([size])
同random_sample([size])
sample([size]))
同random_sample([size])
同random_sample([size])
choice(a[, size, replace, p])
从a中随机选择指定数据
a:1维数组 size:返回数据形状
bytes(length)
返回随机位
length:位的长度
python生成随机数、随机字符串
import random
import string
# 随机整数:
print random.randint(1,50)
# 随机选取0到100间的偶数:
print random.randrange(0, 101, 2)
#随机产生范围内数字
random.randrange(1000,2000)
# 随机浮点数:
print random.random()
print random.uniform(1, 10)
# 随机字符:
print random.choice('abcdefghijklmnopqrstuvwxyz!@#$%^&*()')
# 多个字符中生成指定数量的随机字符:
print random.sample('zyxwvutsrqponmlkjihgfedcba',5)
----->>[w],[e],[r],[t]
#Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
import random
import numpy as np
b=(random.sample('zyxwv1684365136461utsrqp1234567890onmlkjihgfedcba',4))
print("".join(b))
---->>w68f
# 从a-zA-Z0-9生成指定数量的随机字符:
ran_str = ''.join(random.sample(string.ascii_letters + string.digits, 8))
print ran_str
# 多个字符中选取指定数量的字符组成新字符串:
prin ''.join(random.sample(['z','y','x','w','v','u','t','s','r','q','p','o','n','m','l','k','j','i','h','g','f','e','d','c','b','a'], 5))
# 随机选取字符串:
print random.choice(['剪刀', '石头', '布'])
# 打乱排序
items = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print random.shuffle(items)
#产生2行三列均匀分布随机数组
print random.rand(2,3)
#三行三列正态分布随机数据
print random.randn(3,3) #
#(1,100)以内的5行5列随机整数
print random.randint(1,100,[5,5]) #
#以内10个随机浮点数
print random.random(10) #(0,1)
#内随机选择一个数
3. 分布
numpy.random模块提供了产生各种分布随机数的API:
函数名称函数功能参数说明
beta(a, b[, size])
贝塔分布样本,在 [0, 1]内。
binomial(n, p[, size])
二项分布的样本。
chisquare(df[, size])
卡方分布样本。
dirichlet(alpha[, size])
狄利克雷分布样本。
exponential([scale, size])
指数分布
f(dfnum, dfden[, size])
F分布样本。
gamma(shape[, scale, size])
伽马分布
geometric(p[, size])
几何分布
gumbel([loc, scale, size])
耿贝尔分布。
hypergeometric(ngood, nbad, nsample[, size])
超几何分布样本。
laplace([loc, scale, size])
拉普拉斯或双指数分布样本
logistic([loc, scale, size])
Logistic分布样本
lognormal([mean, sigma, size])
对数正态分布
logseries(p[, size])
对数级数分布。
multinomial(n, pvals[, size])
多项分布
multivariate_normal(mean, cov[, size])
多元正态分布。
negative_binomial(n, p[, size])
负二项分布
noncentral_chisquare(df, nonc[, size])
非中心卡方分布
noncentral_f(dfnum, dfden, nonc[, size])
非中心F分布
normal([loc, scale, size])
正态(高斯)分布
pareto(a[, size])
帕累托(Lomax)分布
poisson([lam, size])
泊松分布
power(a[, size])
Draws samples in [0, 1] from a power distribution with positive exponent a - 1.
rayleigh([scale, size])
Rayleigh 分布
standard_cauchy([size])
标准柯西分布
standard_exponential([size])
标准的指数分布
standard_gamma(shape[, size])
标准伽马分布
standard_normal([size])
标准正态分布 (mean=0, stdev=1).
standard_t(df[, size])
Standard Student’s t distribution with df degrees of freedom.
triangular(left, mode, right[, size])
三角形分布
uniform([low, high, size])
均匀分布
vonmises(mu, kappa[, size])
von Mises分布
wald(mean, scale[, size])
瓦尔德(逆高斯)分布
weibull(a[, size])
Weibull 分布
zipf(a[, size])
齐普夫分布
#正态分布
import numpy as np
import matplotlib.pyplot as plt
mu = 1 #期望为1
sigma = 3 #标准差为3
num = 10000 #个数为10000
rand_data = np.random.normal(mu, sigma, num)
count, bins, ignored = plt.hist(rand_data, 30, normed=True)
plt.plot(bins, 1/(sigma * np.sqrt(2 * np.pi)) *np.exp( - (bins - mu)**2 / (2 * sigma**2)), linewidth=2, color='r')
plt.show()
4. 排列
函数名称函数功能参数说明
shuffle(x)
打乱对象x(多维矩阵按照第一维打乱)
矩阵或者列表
permutation(x)
打乱并返回该对象(多维矩阵按照第一维打乱)
整数或者矩阵
#正态分布
import numpy as np
rand_data = np.random.randint(1, 10, (3, 4))
print(rand_data)
np.random.shuffle(rand_data)
print(rand_data)
out:
[[4 4 4 8]
[5 6 8 2]
[1 7 6 6]]
[[4 4 4 8]
[1 7 6 6]
[5 6 8 2]]
#按照行打乱了,也就是交换了行
python随机生成一个数字_python随机生成相关推荐
- python请输入一个数字_python里面如何输入数字
要求:用python写一个要求用户输入数字,如果不是数字就一直循环要求输入,直到输入数字为止的代码 错误打开方式:while True: ten=input('Enter a number:') if ...
- python怎么定义一个数字_Python数字变量定义赋值
一.任务描述 本实验的任务主要对Python的变量赋值进行基本操作,通过完成本实验任务,要求学生熟练掌握Python的变量赋值与定义,并对Python变量的基本操作进行整理并填写工作任务报告. 二.任 ...
- python怎么输入一个数字_python怎么输入数字
在编程中,经常使用数字来记录游戏得分.表示可视化数据.存储Web应用信息等.Python根据数字的用法以不同的方式处理它们.鉴于整数使用起来最简单,下面就先来看看 Python是如何管理它们的. 今天 ...
- python列表乘一个数字_python的列表乘以数字
以不可变对象为元素的列表 a=[1,2] b=a*3 #则b为 [1,2,1,2,1,2] 以可变对象为元素的列表 #如列表以列表为元素 a=[[1]] b=a*3 #则b为 [[1],[1],[1] ...
- Python代码实现猜数字游戏随机生成数字进行比对
Python代码实现猜数字游戏随机生成数字进行比对 import random secret = random.randint(1,10) print("---------------猜数字 ...
- python列表乘一个数字
在学习yolov5的yolo.py文件中的Detect类时,出现python列表乘一个数字,我很久没有碰python代码了,都忘记了,因此这里记录一下: 这里参考文章如下: python 列表乘一个数 ...
- Shell编程 ——for循环、if语句、sleep睡眠。——每秒钟生成一个文件,一共生成60个文件
实践: 每秒钟生成一个文件,一共生成60个文件,文件名格式是"20190101_101010.txt".但是,第10.20秒,不生成文件. #!/bin/sh for((i=0;i ...
- python 幂运算 整数_在Python中检查一个数字是否是另一个数字的幂
python 幂运算 整数 To solve this problem simply, we will use the log() function from the math module. The ...
- python 列表乘一个数字
python 列表乘一个数字 在python中, 如果用一个列表list1乘一个数字n 会得到一个新的列表list2, 这个列表的元素是list1的元素重复n次, 例如 list1 = [0] lis ...
最新文章
- 键盘压缩背景,ios滚动不流畅,禁止遮罩层下面内容滚动
- python的GUI之Tkinter的Label组件
- css阴影属性_第三场阴影场与属性访问器接口
- 发动机冷启动和热启动的区别_「牛车实验室」AGM自动启停蓄电池解读 和普通蓄电池到底有什么区别...
- MOSS服务器场迁移1-有关切换登录用户时需要刷新一次才能成功的问题
- Unsupported major.minor version 51.0 jdk版本错误解决方案 eclipse版
- 几何画板要怎样度量直线方程
- network 宽带比特b,字节B
- unity下载及安装
- 手机号码正则_中国大陆手机号码的正则表达式总结ChinaMobilePhoneNumberRegex
- asp.net 注册、卸载iis,iis重启命令
- VTK系列12_VTK读取PNG图像并显示
- Justice 「未见系列 2」随夏而至,总有一款让你心动的配色!
- 面向对象-基础语法讲解(案例-烤地瓜、搬家具)
- 学校教室计算机室云课堂软件,专注云教室教育培训云课堂的NC个人云桌面
- pytorch学习(二)梯度:什么叫梯度?什么叫梯度下降
- 用计算机的声音编辑工具录制一段语音信号,传媒2020年7月《影视录音基础》课程考试在线作业考核试题题目【标准答案】...
- 服务器验收性能标准,云服务器 验收
- 癫痫脑电信号基础知识
- “B站”们的服务器藏哪儿了?
热门文章
- 计算机与通信专业英语教学大纲,通信工程专业英语教学大纲英文版.docx
- 南昌理工学院计算机应用怎么样,南昌理工学院计算机系哪个专业最好
- 关于Windows蓝屏6B修复方法的完整全过程
- 软件测试 | 测试开发 | 智能音箱语音交互系统简介与测试初探
- 两家出版社称考虑将莫言作品编入中学教材-莫言-教材-诺贝尔奖
- 万年历-java课程设计题_万年历-Java课程设计题(eclipse编辑器)
- 在亲生经历被非法APP诈骗中总结经验教训--网络安全
- 钣金cad插件_ug,CAD,SolidWorks,钣金??????非标等设计一站式学习,
- 这才是目前百度统计接口的正确打开方式20180322
- 计算年增长率c语言用scanf,[转]c语言scanf终极研究