精华内容
参与话题
问答
  • 3. R语言随机数生成

    万次阅读 2017-12-10 00:10:27
    r语言各种分布随机数生成方式。

    1. 均匀分布

    函数: runif(n, min=0, max=1),n 表示生成的随机数数量,min 表示均匀分布的下限,max 表示均匀分布的上限,若省略参min、max,则默认生成[0,1]上的均匀分布随机数。

    > q = runif(5,-1,1)
    > q
    [1]  0.73539909  0.72895000 -0.04357151  0.81696252  0.50210058

    2. 正太分布

    函数:rnorm(n, mean=0, sd=1),其中,n 表示生成的随机数数量,mean是正态分布的均值,默认为0,sd 是正态分布的标准差,默认时为1。

    > x = rnorm(10,5,10)
    > x
     [1] 10.319216 -3.697041 24.565294 -9.691016 -7.324058
     [6] -6.185308 -2.107426 -1.915519 13.306308 22.763153

    3. 二项分布

    函数:rbinom(n, size, prob),n 表示生成的随机数数量,size 表示进行贝努力试验的次数,prob 表示一次贝努力试验成功的概率。

    > x = rbinom(10,10,0.9)
    > x
     [1]  9  9 10  9  8  9  9  6 10 10

    4. 指数分布

    函数:rexp(n,lamda = 1),n 表示生成的随机数个数,lamda=1/mean

    > x = rexp(10,3)
    > x
     [1] 0.13044259 0.52299630 0.35504953 0.50061743 0.03373871
     [6] 1.03543586 2.08565786 0.81414981 0.31333523 0.02681090

    5. 其他

    除了生成上面介绍的几种分布的随机数,还可以生成poisson分布、t 分布、F 分布等很多种分布的随机数,只要在相应的分布名前加“r”就可以。
    这里写图片描述

    除了在分布名前面加r还可以加其他的参数,例如:p,q,d。功能见下图:
    这里写图片描述

    我的博客即将同步至腾讯云+社区,邀请大家一同入驻。

    展开全文
  • //定义随机数产生函数static int GetRandomNumber(int min, intmax){int rtn = 0;Random r= newRandom();byte[] buffer =Guid.NewGuid().ToByteArray();int iSeed = BitConverter.ToInt32(buffer, 0);r= newRandom...

    //定义随机数产生函数

    static int GetRandomNumber(int min, intmax)

    {int rtn = 0;

    Random r= newRandom();byte[] buffer =Guid.NewGuid().ToByteArray();int iSeed = BitConverter.ToInt32(buffer, 0);

    r= newRandom(iSeed);

    rtn= r.Next(min, max + 1);returnrtn;

    }//生成随机数

    a[i] = GetRandomNumber(1, 33); //产生1-33的随机数//*************实例,双色球彩票随机数生成*******************//usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;namespaceSSQYH

    {public partial classForm1 : Form

    {publicForm1()

    {

    InitializeComponent();

    }static int GetRandomNumber(int min, intmax)

    {int rtn = 0;

    Random r= newRandom();byte[] buffer =Guid.NewGuid().ToByteArray();int iSeed = BitConverter.ToInt32(buffer, 0);

    r= newRandom(iSeed);

    rtn= r.Next(min, max + 1);returnrtn;

    }private void button1_Click(objectsender, EventArgs e)

    {inti, j, k, l, b, x;int[] a = new int[6];for (i = 0; i < 6; i++)

    {//a[i] = Guid.NewGuid().GetHashCode() % 33;

    a[i] = GetRandomNumber(1, 33); //产生数据

    for (j = 0; j < i; j++) //去重复

    if (a[j] ==a[i])

    i= i - 1;

    }for (k = 0; k < 6; k++) //排序

    for (l = k + 1; l < 6; l++)if (a[k] >a[l])

    {

    x=a[k];

    a[k]=a[l];

    a[l]=x;

    }

    b= GetRandomNumber(1, 16);

    textBox1.Text= a[0].ToString();

    textBox2.Text= a[1].ToString();

    textBox3.Text= a[2].ToString();

    textBox4.Text= a[3].ToString();

    textBox5.Text= a[4].ToString();

    textBox6.Text= a[5].ToString();

    textBox7.Text=b.ToString();

    }private void textBox7_TextChanged(objectsender, EventArgs e)

    {

    }private void button4_Click(objectsender, EventArgs e)

    {inti, j, k, l, b, c, x, y;int[] a = new int[5];for (i = 0; i < 5; i++)

    {//a[i] = Guid.NewGuid().GetHashCode() % 33;

    a[i] = GetRandomNumber(1, 35); //产生数据

    for (j = 0; j < i; j++) //去重复

    if (a[j] ==a[i])

    i= i - 1;

    }for (k = 0; k < 5; k++) //排序

    for (l = k + 1; l < 5; l++)if (a[k] >a[l])

    {

    x=a[k];

    a[k]=a[l];

    a[l]=x;

    }while (true)

    {

    b= GetRandomNumber(1, 12);

    c= GetRandomNumber(1, 12);if (b !=c)

    {if (b >c)

    {

    y=b;

    b=c;

    c=y;

    }

    textBox13.Text=b.ToString();

    textBox14.Text=c.ToString();break;

    }

    }

    textBox8.Text= a[0].ToString();

    textBox9.Text= a[1].ToString();

    textBox10.Text= a[2].ToString();

    textBox11.Text= a[3].ToString();

    textBox12.Text= a[4].ToString();

    }private void button7_Click(objectsender, EventArgs e)

    {inti, j, k, l, b, c, x, y;int[] a = new int[7];for (i = 0; i < 7; i++)

    {//a[i] = Guid.NewGuid().GetHashCode() % 33;

    a[i] = GetRandomNumber(1, 33); //产生数据

    for (j = 0; j < i; j++) //去重复

    if (a[j] ==a[i])

    i= i - 1;

    }for (k = 0; k < 7; k++) //排序

    for (l = k + 1; l < 7; l++)if (a[k] >a[l])

    {

    x=a[k];

    a[k]=a[l];

    a[l]=x;

    }

    textBox15.Text= a[0].ToString();

    textBox16.Text= a[1].ToString();

    textBox17.Text= a[2].ToString();

    textBox18.Text= a[3].ToString();

    textBox19.Text= a[4].ToString();

    textBox20.Text= a[5].ToString();

    textBox21.Text= a[6].ToString();while (true)

    {

    b= GetRandomNumber(1, 16);

    c= GetRandomNumber(1, 16);if (b !=c)

    {if (b >c)

    {

    y=b;

    b=c;

    c=y;

    }

    }

    textBox22.Text=b.ToString();

    textBox23.Text=c.ToString();

    }

    }

    }

    }

    展开全文
  • 统计计算——基于R语言的随机数生成

    统计计算——基于R语言的随机数生成

    R中常见一元分布函数
    R中常见一元分布函数

    代码展示:

    set.seed(191206)#设置随机数种子,为了保证多次生成的随机数一致,需要保证数据一样情况下进行再次实验时可用到
    N = 100 #生成随机数个数
    
    #1 生成BETA分布随机数
    x1 = rbeta(N,2,2)
    x1
    #2 生成二项分布随机数
    x2 = rbinom(N,size=1,prob=0.5)
    x2
    #3 生成卡方分布随机数
    x3=rchisq(N,5)
    x3
    #4生成正态分布随机数
    x4 <- rnorm(N) #默认生成均值为0,标准差为1的服从正态分布的N个随机数
    x4
    x5 <- rnorm(N,10,5) #默认生成均值为10,标准差为5的服从正态分布的N个随机数
    sd(x5) #验证生成的随机数与我们设置的标准差是否一致,样本量越大二者越接近。
    mean(x5)#验证生成的随机数均值与我们设置的均值是否一致,样本量越大二者越接近。
    

    其它用法类似就不一一举例了~

    展开全文
  • 随机数生成

    2020-05-18 16:46:36
    1.Random函数 Random中的nextInt(x)函数能生成一个在0-x之间的数字(不包括x) 即:0 ≤ random Random r=new Random(); int[] s=new int[10]; ... //生成一个小于3、大于等于0的随机数 System.

    1.Random函数
    Random中的nextInt(x)函数能生成一个在0-x之间的数字(不包括x)
    即:0 ≤ random<x

            Random r=new Random();
            int[] s=new int[10];
            for(int i=0;i<s.length;i++)
            {
                s[i]=r.nextInt(3);           //生成一个小于3、大于等于0的随机数
                System.out.println(s[i]);    
            }
    

    2.Math函数
    Math函数的random方法,能返回一个0.0 - 1.0之间的double数。
    即:0.0 ≤ random<1.0
    但是通过类型转换和乘法同样能得到相对应的int类型的随机数
    通过下面的输出能发现公式:
    随机数:Math.random()*n+m
    随机数范围:m ≤ random < m+n-1

            int i1=(int)(Math.random()*26);
            double i2=Math.random()*2;
            double i3=Math.random()*2+5;
            int i4=(int)(Math.random()*2);
            int i5=(int)(Math.random()*5+10);
            double i6=Math.random();
            System.out.println(i1);    //生成一个0-26的随机数
            System.out.println(i2);    //生成一个0.0-2.0的随机数
            System.out.println(i3);    //生成一个5.0-6.0的随机数
            System.out.println(i4);    //生成一个0-2的随机数
            System.out.println(i5);    //生成一个10-14的随机数
            System.out.println(i6);    //生成一个0.0-1.0的随机数 
    
    
    展开全文
  • 随机数的使用是很多算法的关键步骤,例如蒙特卡洛法、遗传算法中的轮盘赌法的过程,因此对于任意一种语言,掌握其各类型随机数生成的方法至关重要,Python与R在随机数底层生成上都依靠梅森旋转(twister)来生成高...
  • 随机数生成

    2014-11-10 09:28:10
    随笔- 72 文章- 3 评论- 511  ...[C++11]C++11带来的随机数生成... 标准库提供了一个非确定性随机数生成设备.在Linux的实现中,是读取/dev/urandom设备;Windows的实现居然是用rand_s,在这里强烈谴责一下.  r
  • C# 随机数生成 Random

    2019-07-19 16:51:51
    随机数函数:Random //创建一个随机数对象 ...//调用随机数生成的方法Next,随机生成1-10之间的数 int n = r.Next(1,11); //生成范围:1-10,11不包括在内 Console.WriteLine("r={0}",n); ...
  • Java 随机数生成

    2019-09-29 10:17:47
    java随机数 java中产生随机数的方法主要...nextInt()方法,生成区间为 [0,n)的随机数,包括0,不包括n 例: Random r = new Random(); int i = r.nextInt(100); System.out.println("i:"+i); 第二种:Math.rand...
  • R生成随机数

    万次阅读 多人点赞 2017-03-01 19:19:18
    1. 随机数生成   作为一种统计分析语言,R是一个生成各种统计分布功能随机数的综合性图书馆。在这篇文章中,我想专注于这个简单的问题:我如何生成一个随机数?   答案取决于你想要什么样的随机数生成?让我们...
  • python随机数生成小结

    2020-04-02 19:37:54
    python随机数生成小结 #生成0-1的随机数 randData = random.random() #生成1-10的整数 randData = random.randint(1,11) #生成0-10的随机偶数 randData = random.randrange(0,11,2) #seed函数生成一个随机因子,相同...
  • 随机数生成算法

    2015-09-16 14:03:12
    介绍一种比较流行的 随机数生成算法“线性同余”算法,其原理是:选取足够大的正整数M和任意自然数a、b和初始值R0,然后利用递推公式: R0 = 指定值, Rn = (a*Rn-1+b)% M public class TestLCG{ public static ...
  • Java随机数生成

    2019-03-31 11:52:54
    import java.util.Scanner; public class DateWork2 { public static void main(String[] args) { ... * 随机数:随机生成一个正整数。 * int num = (int)Math.random()*10; * * double num =Math.r...
  • 随机数生成散点图

    2020-10-25 19:44:12
    import matplotlib.pylab as pl import numpy as np x=np.random.random(100) y=np.random.random(100) pl.scatter(x,y,s=x*500,c=u'r',marker=u'*')#s指的是大小,...pl.title('随机数生成散点图') pl.show() ...
  • 如果让你用C++来生成0——N-1之间的随机数,你会怎么做?你可能会说,很简单,看: srand( (unsigned)time( NULL ) ); rand() % N; 仔细想一下,这个结果是随机的吗(当然,我们不考虑rand()函数的伪随机性)? ...
  • 随机数生成代码

    2019-09-29 16:49:45
    随机数: 0<=Math.random()<1 (1)任意max和min之间取随机整数的公式: var r=Math.floor(Math.random()*(max-min+1)+min) (2)在0~max之间取随机整数: var r=Math.floor(Math.random()*(max+1)) 1. 取整:(1)....
  • View Code1privatestaticchar[]constant={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x',...
  • rnorm(n,mean,sd) 其中,n表示生成随机数个数,mean表示正态分布均值,sd表示正态分布标准差 > rnorm(5,0,2)[1] -5.31147765 0.09634197 0.35276104 -1.94548466 0.54533883 (2)生成均匀分布随机数: run...
  • java 中 随机数生成

    2020-07-31 21:43:41
    Random产生随机数(掌握) 概述: Random类似Scanner,也是Java提供好的API,内部提供了产生随机数的功能 API后续课程详细讲解,现在可以简单理解为Java已经写好的代码 使用步骤: 导入包 import java....
  • iOS随机数生成

    2016-03-24 16:44:43
    感觉这个比较好用一些,先写...//代表是从0-count之间的随机数 int r = arc4random()%count //代表从x---x+y之间的随机数 int r = arc4random() %x + y; 下面举个列子吧  NSArray *array = [[NSArra

空空如也

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

r随机数生成