精华内容
下载资源
问答
  • Python 产生随机数

    万次阅读 2018-08-05 16:28:52
    在数据分析中,数据的获取是第一步,numpy.random 模块提供了非常全的自动产生数据API,是学习数据分析的第一步。 总体来说,numpy.random模块...4. 生成器:种随机数种子,根据同一种子产生随机数是相同的 以下是...

     

    在数据分析中,数据的获取是第一步,numpy.random 模块提供了非常全的自动产生数据API,是学习数据分析的第一步。
    总体来说,numpy.random模块分为四个部分,对应四种功能:
    1. 简单随机数: 产生简单的随机数据,可以是任何维度
    2. 排列:将所给对象随机排列
    3. 分布:产生指定分布的数据,如高斯分布等
    4. 生成器:种随机数种子,根据同一种子产生的随机数是相同的
    以下是详细内容以及代码实例:(以下代码默认已导入numpy:import numpy as np

    1. 生成器

    电脑产生随机数需要明白以下几点:
    (1)随机数是由随机种子根据一定的计算方法计算出来的数值。所以,只要计算方法一定,随机种子一定,那么产生的随机数就不会变。
    (2)只要用户不设置随机种子,那么在默认情况下随机种子来自系统时钟(即定时/计数器的值)
    (3)随机数产生的算法与系统有关,Windows和Linux是不同的,也就是说,即便是随机种子一样,不同系统产生的随机数也不一样。
    numpy.random 设置种子的方法有:

    np.random.RandomState(42)

    2、简单随机数

                                                 

                                                          

    例:

    rng = np.random.RandomState(42) # 生成随机数时可指定一种子,目的是为了生成相同的随机数,实现代码的复现。

    X = rng.randn(100, 2)

     

    参考自:https://blog.csdn.net/jinxiaonian11/article/details/53143141

     

    具体解读:

    1、np.random.rand()

    给定一个形状创建数组,并在数组中加入[0,1]之间均匀分布的随机样本。

    numpy.random.rand(d0, d1, ..., dn),产生d0 - d1 - ... - dn形状的在[0,1)上均匀分布的float型数。

    2、np.random.randn()

    以给定的形状创建一个数组,数组元素符合标准正态分布N(0,1)。

    若要获得一般正态分布N(u,sigma2),可用 sigma*np.random.randn+u

    numpy.random.randn(d0,d1,...,dn),产生d0 - d1 - ... - dn形状的标准正态分布的float型数。

    3.numpy.random.randint()
    用法是:numpy.random.randint(low,high=None,size=None,dtype)
    生成在半开半闭区间[low,high)上离散均匀分布的整数值;若high=None,则取值区间变为[0,low)

    numpy.random.randint(low, high=None, size=None, dtype='l'),产生随机整数

    4.numpy.random.random_integers()
    用法是: numpy.random.random_integers(low,high=None,size=None)
    生成闭区间[low,high]上离散均匀分布的整数值;若high=None,则取值区间变为[1,low]

    此外,若要将【a,b】区间分成N等分,也可以用此函数实现

     numpy.random.random_integers(low, high=None, size=None),在闭区间上产生随机整数;


    a+(b-a)*(numpy.random.random_integers(N)-1)/(N-1)

    5.numpy.random_sample()
    用法是: numpy.random.random_sample(size=None)
    以给定形状返回[0,1)之间的随机浮点数

     

    6.numpy.random.choice()
    用法是: numpy.random.choice(a,size=None,replace=True,p=None)
    若a为数组,则从a中选取元素;若a为单个int类型数,则选取range(a)中的数
    replace是bool类型,为True,则选取的元素会出现重复;反之不会出现重复
    p为数组,里面存放选到每个数的可能性,即概率

    7、函数原型:  numpy.random.uniform(low,high,size)

    功能:从一个均匀分布[low,high)中随机采样,注意定义域是左闭右开,即包含low,不包含high.

    参数介绍: 
        
        low: 采样下界,float类型,默认值为0;
        high: 采样上界,float类型,默认值为1;
        size: 输出样本数目,为int或元组(tuple)类型,例如,size=(m,n,k), 则输出m*n*k个样本,缺省时输出1个值

    返回值:ndarray类型,其形状和参数size中描述一致。


    参考:https://blog.csdn.net/u013920434/article/details/52507173 
     

    展开全文
  • python产生随机数

    2017-10-15 21:02:57
    python 随机数
    #只写一个产生随机整数 
    import random
    #x,y为随机数范围
    val = random.ranint(x,y)
    展开全文
  • #18.7356606526 #12.5798298022 random.randint(a, b),返回[a,b]之间的整数 print random.randint(12, 20) #生成的随机数n: 12 (20, 20) #结果永远是20 #print random.randint(20, 10) #该语句是错误的。下限必须...

    这些方法位于random模块中

    random.random(),同javascript的Math.random(),返回[0.0,1)之间的浮点数

    random.uniform(a, b),返回[a,b]之间的浮点数

    print random.uniform(10, 20)

    print random.uniform(20, 10)

    #---- 结果(不同机器上的结果不一样)

    #18.7356606526

    #12.5798298022

    random.randint(a, b),返回[a,b]之间的整数

    print random.randint(12, 20) #生成的随机数n: 12 <= n <= 20

    print random.randint(20, 20) #结果永远是20

    #print random.randint(20, 10) #该语句是错误的。下限必须小于上限。

    random.randrange([start], stop[, step]),从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。

    random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等效。

    random.choice(sequence)。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。

    print random.choice("学习Python")

    print random.choice(["JGood", "is", "a", "handsome", "boy"])

    print random.choice(("Tuple", "List", "Dict"))

    random.shuffle(x[, random]),用于将一个列表中的元素打乱

    p = ["Python", "is", "powerful", "simple", "and so on..."]

    random.shuffle(p)

    print p

    #---- 结果(不同机器上的结果可能不一样。)

    #['powerful', 'simple', 'is', 'Python', 'and so on...']

    random.sample(sequence, k),从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列。

    list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

    slice = random.sample(list, 5) #从list中随机获取5个元素,作为一个片断返回

    print slice

    print list #原有序列并没有改变。

    分享到:

    18e900b8666ce6f233d25ec02f95ee59.png

    72dd548719f0ace4d5f9bca64e1d7715.png

    2012-03-15 17:47

    浏览 59222

    评论

    展开全文
  • Python产生随机数

    2015-06-16 23:12:16
    如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与random模块中最常用的几个函数的关系,希望你会有所收获,以下就是这篇文章的介绍。 random....
    
    

    如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与random模块中最常用的几个函数的关系,希望你会有所收获,以下就是这篇文章的介绍。

    random.random()用于生成

    用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成随机数


    1
    n: a <= n <= b。如果 a <b, 则 b <= n <= a。

    1
    2
    3
    4
    5
    6
    print random.uniform(10, 20)  
    print random.uniform(20, 10)  
    #---- 
    #18.7356606526  
    #12.5798298022  
    random.randint

    用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,Python生成随机数


    1
    2
    3
    print random.randint(12, 20) #生成的随机数n: 12 <= n <= 20 
    print random.randint(20, 20) #结果永远是20 
    #print random.randint(20, 10) #该语句是错误的。

    下限必须小于上限。

    random.randrange

    从指定范围内,按指定基数递增的集合中 ,这篇文章就是对python生成随机数的应用程序的部分介绍。

    随机整数:
    >>> import random
    >>> random.randint(0,99)
    21

    随机选取0到100间的偶数:
    >>> import random
    >>> random.randrange(0, 101, 2)
    42

    随机浮点数:
    >>> import random
    >>> random.random()
    0.85415370477785668
    >>> random.uniform(1, 10)
    5.4221167969800881

    随机字符:
    >>> import random
    >>> random.choice('abcdefg&#%^*f')
    'd'

    多个字符中选取特定数量的字符:
    >>> import random
    random.sample('abcdefghij',3)
    ['a', 'd', 'b']

    多个字符中选取特定数量的字符组成新字符串:
    >>> import random
    >>> import string
    >>> string.join(random.sample(['a','b','c','d','e','f','g','h','i','j'], 3)).r
    eplace(" ","")
    'fih'

    随机选取字符串:
    >>> import random
    >>> random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] )
    'lemon'

    洗牌:
    >>> import random
    >>> items = [1, 2, 3, 4, 5, 6]
    >>> random.shuffle(items)
    >>> items
    [3, 2, 5, 6, 4, 1]如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与random模块中最常用的几个函数的关系,希望你会有所收获,以下就是这篇文章的介绍。

    random.random()用于生成

    用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成随机数

    ?1 n: a <= n <= b。如果 a <b, 则 b <= n <= a。

    ?123456 print random.uniform(10, 20) print random.uniform(20, 10) #---- #18.7356606526 #12.5798298022 random.randint

    用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,Python生成随机数

    ?123 print random.randint(12, 20) #生成的随机数n: 12 <= n <= 20 print random.randint(20, 20) #结果永远是20 #print random.randint(20, 10) #该语句是错误的。

    下限必须小于上限。

    random.randrange

    从指定范围内,按指定基数递增的集合中 ,这篇文章就是对python生成随机数的应用程序的部分介绍。

    随机整数:
    >>> import random
    >>> random.randint(0,99)
    21

    随机选取0到100间的偶数:
    >>> import random
    >>> random.randrange(0, 101, 2)
    42

    随机浮点数:
    >>> import random
    >>> random.random()
    0.85415370477785668
    >>> random.uniform(1, 10)
    5.4221167969800881

    随机字符:
    >>> import random
    >>> random.choice('abcdefg&#%^*f')
    'd'

    多个字符中选取特定数量的字符:
    >>> import random
    random.sample('abcdefghij',3)
    ['a', 'd', 'b']

    多个字符中选取特定数量的字符组成新字符串:
    >>> import random
    >>> import string
    >>> string.join(random.sample(['a','b','c','d','e','f','g','h','i','j'], 3)).r
    eplace(" ","")
    'fih'

    随机选取字符串:
    >>> import random
    >>> random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] )
    'lemon'

    洗牌:
    >>> import random
    >>> items = [1, 2, 3, 4, 5, 6]
    >>> random.shuffle(items)
    >>> items
    [3, 2, 5, 6, 4, 1]

    展开全文
  • python 产生随机数

    2014-11-07 10:02:00
    Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。 random.random random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0 random.uniform  random.uniform的函数...
  • 前言这是俺写的第一篇关于python的博客,分享一下我所整合的python中的随机数函数,就当作是自己的一个笔记,也可以供像我一样的python入门新手小白参考学习。希望可以记录下自己的学习过程。一、random()生成一个(0...
  • 今天学习了用python生成仿真数据的一些基本方法和技巧,写成博客和大家分享一下。本篇博客主要讲解如何从给定参数的的正态分布/均匀分布中生成随机数以及如何以给定概率从数字列表抽取某数字或从区间列表的某一区间...
  • 返回类型为元组类型 语法 import random random.sample(x,n) #参数: x -- list,tuple,strings的一种 n -- 返回n个随机项 实例演示 >>> print random.sample('i love python',3) [' ', 'e', 'i'] >>> print random....
  • 在我们身边,学习Python的朋友很多,那么大家会用Python产生随机数吗?下面就给大家分享相关代码。 import numpy as np import math import matplotlib as mpl from matplotlib import pyplot as plt from mpl_...
  • python 产生随机数,随机字符串

    千次阅读 2017-06-07 17:29:56
    python 产生随机数,随机字符串 import random #随机整数: print random.randint(1,50) #随机选取0到100间的偶数: print random.randrange(0, 101, 2) #随机浮点数: ​ print random...
  • random.randomrandom.random()用于生成一个0到1的随机符点数: 0 b,则生成的随机数n: b
  • Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。random.randomrandom.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0random.uniformrandom.uniform的函数原型为:...
  • python产生10个不同随机数的方法:首先创建一个result的结果空列表;然后循环直到result的长度超过10退出循环,循环里面随机生成一个1-10之间的数;最后查看生成的num随机数是否在result列表里,不在就添加进去。...
  • python产生随机数

    2021-04-12 19:20:29
    一.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的整数: ...
  •  1,在两个数之间产生一个随机数。 >>> random.uniform(1,5) 1.6035288788035151 >>> 2,产生整数 >>> random.randint(1,10) 3 ...3,在0,1之间产生数 ...如果你对在Python生成随机数与ran
  • python 产生随机数示例

    2011-11-18 19:17:09
    本文用代码示例详细说明了如何用 Python 生成随机数 随机整数:     >>> import random   >>> random.randint(0,99) 21        随机选取0到100间的偶数:           >>> ...
  • 一、random库基本介绍random库是使用随机数Python标准库伪随机数:采用梅森旋转算法生成的(伪)随机序列中元素random库主要用于生成随机数使用random库:import random1.1 random库概述random库包括两类函数,常用...
  • random模块,用于生成伪随机数,之所以称之为伪随机数,是因为真正意义上的随机数(或者随机事件)在某次产生过程中是按照实验过程中表现的分布概率随机产生的,其结果是不可预测的,是不可见的。而计算机中的随机...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,463
精华内容 585
关键字:

python产生随机数

python 订阅