class numpy.random.RandomState(seed=None)
  RandomState 是一个基于Mersenne Twister算法的伪随机数生成类
  RandomState 包含很多生成 概率分布的伪随机数 的方法。

  如果指定seed值,那么每次生成的随机数都是一样的。即对于某一个伪随机数发生器,只要该种子相同,产生的随机数序列就是相同的。

numpy.random.RandomState.rand(d0, d1, ..., dn)
  Random values in a given shape.
  Create an array of the given shape and populate it with random samples from a uniform distribution over [0, 1).
  rand()函数产生 [0,1)间的均匀分布的指定维度的 伪随机数
  Parameters:
    d0, d1, …, dn : int, optional
      The dimensions of the returned array, should all be positive. If no argument is given a single Python float is returned.

  Returns:
    out : ndarray, shape (d0, d1, ..., dn)
      Random values.

numpy.random.RandomState.uniform(low=0.0, high=1.0, size=None)
  Draw samples from a uniform distribution.
  Samples are uniformly distributed over the half-open interval [low, high) (includes low, but excludes high). In other words, any value within the given interval is equally likely to be drawn by uniform.
  uniform()函数产生 [low,high)间的 均匀分布的指定维度的 伪随机数
  Parameters:
  low : float or array_like of floats, optional
    Lower boundary of the output interval. All values generated will be greater than or equal to low. The default value is 0.
  high : float or array_like of floats
    Upper boundary of the output interval. All values generated will be less than high. The default value is 1.0.
  size : int or tuple of ints, optional
    Output shape. If the given shape is, e.g., (m, n, k), then m * n * k samples are drawn.
    If size is None (default), a single value is returned if low and high are both scalars. Otherwise, np.broadcast(low, high).size samples are drawn.

  Returns:
    out : ndarray or scalar
      Drawn samples from the parameterized uniform distribution.

有时候我们需要自己模拟构造 输入数据(矩阵),那么这种随机数的生成是一种很好的方式。

 # -*- coding: utf-8 -*-
"""
Created on Tue May 29 12:14:11 2018 @author: Frank
""" import numpy as np #基于seed产生随机数
rng = np.random.RandomState(seed)
print(type(rng)) #生成[0,1)间的 32行2列矩阵
X=rng.rand(32, 2)
print("X.type{}".format(type(X)))
print(X) #生成[0,1)间的 一个随机数
a1 = rng.rand()
print("a1.type{}".format(type(a1)))
print(a1) #生成[0,1)间的 一个包含两个元素的随机数组
a2 = rng.rand(2)
print("a2.type{}".format(type(a2)))
print(a2) #生成[1,2)间的随机浮点数
X1 = rng.uniform(1,2)
print("X1.type{}".format(type(X1)))
print(X1) #生成[1,2)间的随机数,一维数组且仅含1个数
X2 = rng.uniform(1,2,1)
print("X2.type{}".format(type(X2)))
print(X2) #生成[1,2)间的随机数,一维数组且仅含2个数
X3 = rng.uniform(1,2,2)
print("X3.type{}".format(type(X3)))
print(X3) #生成[1,2)间的随机数,2行3列矩阵
X4 = rng.uniform(1,2,(2,3))
print("X4.type{}".format(type(X4)))
print(X4)

基于numpy的随机数构造的更多相关文章

  1. 使用numpy产生随机数

    numpy中的random模块包含了很多方法可以用来产生随机数,这篇文章将对random中的一些常用方法做一个总结. 1.numpy.random.rand(d0, d1, ..., dn) 作用:产 ...

  2. 一种基于 Numpy 的 TF-IDF 实现报告

    一种基于 Numpy 的 TF-IDF 实现报告 摘要 本文使用了一种 state-of-the-art 的矩阵表示方法来计算每个词在每篇文章上的 TF-IDF 权重(特征).本文还将介绍基于 TF- ...

  3. kbmMW安全第#3 - 基于硬件的随机数#2

    在之前的基于硬件的随机数博文中,我介绍了如何使用基于外部硬件的随机数生成器,来生成高质量的随机数. 但是,后来英特尔和AMD的CPU也包含随机值生成器.从2015年6月开始,来自Ivy Bridge的 ...

  4. kbmMW基于硬件生成随机数

    按作者的说法,Delphi提供的生成随机数不是真正随机的,因为他是根据种子计算的,即种子+算法生成的随机数,如果被人知道原始种子值和算法的调用次数,则可以重现随机数,因此在安全领域,这是不安全的.同时 ...

  5. 科学计算三维可视化---Mlab基础(基于Numpy数组的绘图函数)

    Mlab了解 Mlab是Mayavi提供的面向脚本的api,他可以实现快速的三维可视化,Mayavi可以通过Mlab的绘图函数对Numpy数组建立可视化. 过程为: .建立数据源 .使用Filter( ...

  6. [开发技巧]·Python极简实现滑动平均滤波(基于Numpy.convolve)

    [开发技巧]·Python极简实现滑动平均滤波(基于Numpy.convolve) ​ 1.滑动平均概念 滑动平均滤波法(又称递推平均滤波法),时把连续取N个采样值看成一个队列 ,队列的长度固定为N ...

  7. 基于Numpy的神经网络+手写数字识别

    基于Numpy的神经网络+手写数字识别 本文代码来自Tariq Rashid所著<Python神经网络编程> 代码分为三个部分,框架如下所示: # neural network class ...

  8. 深度学习基础-基于Numpy的卷积神经网络(CNN)实现

    本文是深度学习入门: 基于Python的实现.神经网络与深度学习(NNDL)以及动手学深度学习的读书笔记.本文将介绍基于Numpy的卷积神经网络(Convolutional Networks,CNN) ...

  9. 深度学习基础-基于Numpy的感知机Perception构建和训练

    1. 感知机模型   感知机Perception是一个线性的分类器,其只适用于线性可分的数据.          f(x) = sign(w.x + b) 其试图在所有线性可分超平面构成的假设空间中找 ...

随机推荐

  1. brew 安装PHP的配置文件所在位置

  2. Qt实现串口通信总结

    Qt实现串口通信总结 注意: Qt5发布之前,Qt实现串口通信一般是采用第三方类库qextserialport.Qt5发布后自带了QtSerialPort 能够支持串口通信. 1.Qextserial ...

  3. 【转载】C/C++语言分析 & 每年学一种编程语言 & git历史

    http://blog.csdn.net/turingbook/article/details/1778867 <程序员修炼之路>英文注释版 作者提出的经营之道是:——Invest Reg ...

  4. LINUX之文件操作权限讲解

    r(Read,读取):对文件而言,具有读取文件内容的权限:对目录来说,具有浏览目 录的权限. w(Write,写入):对文件而言,具有新增.修改文件内容的权限:对目录来说,具有删除.移动目录内文件的权 ...

  5. metal 优化数据分析

    https://developer.apple.com/documentation/metal/render_pipeline/viewing_pipeline_statistics_of_a_dra ...

  6. 理解Flow静态类型检查

    一.为什么在JavaScript中使用静态类型 了解静态类型的最快方法是将其与动态类型进行对比. 有静态类型参数的语言被称为静态类型语言. 另一方面,有动态类型参数的语言被称为动态类型语言.核心区别是 ...

  7. scrapy-splash抓取动态数据例子五

    一.介绍 本例子用scrapy-splash抓取智能电视网网站给定关键字抓取咨询信息. 给定关键字:打通:融合:电视 抓取信息内如下: 1.资讯标题 2.资讯链接 3.资讯时间 4.资讯来源 二.网站 ...

  8. (转)IntelliJ IDEA下的使用git

    1.git简介 Git是目前流行的分布式版本管理系统.它拥有两套版本库,本地库和远程库,在不进行合并和删除之类的操作时这两套版本库互不影响.也因此其近乎所有的操作都是本地执行,所以在断网的情况下任然可 ...

  9. [Tools] Add a Dynamic Tweet Button to a Webpage

    To let people easily share the patio11bot, we'll add a "Tweet" button to the page. You can ...

  10. java二维码小试牛刀

    旁白: 由于工作需要,要做一个java的二维码的图片,花了2天的时间学习了一下,过程中也遇到了一些问题,这里做个笔记,收藏了. 废话不多说了,入题吧! 转自:http://www.open-open. ...