假设概率密度函数为:

思路:

首先产生-1到1之间的均匀分布随机数x,和0到1之间的均匀分布随机数y。

如果y<f(x),则x是符合该概率密度的随机数,否则,重复上述操作。

用r语言生成100个随机数程序如下:

> for(i in 1:100)
+ {x[i]=runif(1,-1,1)
+ y[i]=runif(1,0,1)
+     while(y[i]>(1-abs(x[i])))
+     {x[i]=runif(1,-1,1)
+     y[i]=runif(1,0,1)
+     }
+ }

随机数如下:

> x
[1] -0.514901637 -0.217501164 0.711344072 0.392367283 0.630612312
[6] 0.546505700 0.586900601 -0.743232092 -0.336172141 -0.889316445
[11] -0.483111145 0.262203687 0.060877270 0.375244982 0.026205739
[16] 0.164838966 0.322126824 -0.595749320 0.174984953 0.437411303
[21] 0.411043267 -0.164316747 -0.448740647 0.398710048 0.387240598
[26] -0.377926981 -0.703300728 0.607546115 0.192999553 -0.018041003
[31] -0.020166740 0.499004755 -0.735728289 0.662798617 -0.244104174
[36] 0.360975237 -0.080959949 0.194795900 0.067130172 -0.150683799
[41] 0.196463150 -0.664764840 0.080320831 -0.537401136 0.103412358
[46] 0.113238147 -0.123515784 0.013652259 0.039734034 0.403804602
[51] 0.464418256 -0.378770977 -0.323632269 -0.536819858 -0.637694909
[56] -0.443880166 0.101090029 0.020091781 -0.043975835 -0.083350927
[61] -0.154194120 -0.161078955 0.582624681 -0.128034349 -0.129948552
[66] 0.505254598 0.492040237 0.729876905 -0.317929749 0.025999713
[71] 0.219295514 0.004028297 -0.020060018 0.434986595 -0.496682210
[76] 0.367210269 -0.075623044 -0.019082523 0.369629193 -0.122305395
[81] -0.063062626 -0.041233874 0.451531802 -0.171188537 -0.533768997
[86] 0.418290247 0.952854297 0.033798765 -0.069794761 -0.671866662
[91] 0.455189073 0.133429194 -0.785471270 0.351558574 -0.551275020
[96] 0.094082693 0.216529398 -0.195531629 -0.457623412 0.103529213

画图如下:

r语言之给定的概率密度函数生成随机数的更多相关文章

  1. R语言实战(二)数据管理

    本文对应<R语言实战>第4章:基本数据管理:第5章:高级数据管理 创建新变量 #建议采用transform()函数 mydata <- transform(mydata, sumx ...

  2. [转]概率基础和R语言

    概率基础和R语言 R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒.直到大数据的爆发,R语 ...

  3. R语言编程艺术# 数据类型向量(vector)

    R语言最基本的数据类型-向量(vector) 1.插入向量元素,同一向量中的所有的元素必须是相同的模式(数据类型),如整型.数值型(浮点数).字符型(字符串).逻辑型.复数型等.查看变量的类型可以用t ...

  4. R语言实战(四)回归

    本文对应<R语言实战>第8章:回归 回归是一个广义的概念,通指那些用一个或多个预测变量(也称自变量或解释变量)来预测响应变量(也称因变量.效标变量或结果变量)的方法.通常,回归分析可以用来 ...

  5. R语言编程艺术#01#数据类型向量(vector)

    R语言最基本的数据类型-向量(vector) 1.插入向量元素,同一向量中的所有的元素必须是相同的模式(数据类型),如整型.数值型(浮点数).字符型(字符串).逻辑型.复数型等.查看变量的类型可以用t ...

  6. R语言函数总结(转)

    R语言特征 对大小写敏感 通常,数字,字母,. 和 _都是允许的(在一些国家还包括重音字母).不过,一个命名必须以 . 或者字母开头,并且如果以 . 开头,第二个字符不允许是数字. 基本命令要么是表达 ...

  7. 用R语言实现对不平衡数据的四种处理方法

    https://www.weixin765.com/doc/gmlxlfqf.html 在对不平衡的分类数据集进行建模时,机器学**算法可能并不稳定,其预测结果甚至可能是有偏的,而预测精度此时也变得带 ...

  8. R语言编程艺术(4)R对数据、文件、字符串以及图形的处理

    本文对应<R语言编程艺术> 第8章:数学运算与模拟: 第10章:输入与输出: 第11章:字符串操作: 第12章:绘图 =================================== ...

  9. R语言编程艺术(3)R语言编程基础

    本文对应<R语言编程艺术> 第7章:R语言编程结构: 第9章:面向对象的编程: 第13章:调试 ============================================== ...

随机推荐

  1. Orz 终于有了自己的博客地址

    新博客地址:http://www.wnjxyk.cn/

  2. cluster maintain manager Software群集管理软件

    1,ocfs2 2,crmsh(cluster management shell,)==crm shell [pacemaker OpenAIS,heartbeat,corosync,crmsh] 3 ...

  3. 更改mysql 数据库名称

    //创建新数据库 CREATE DATABASE hbwebTemporary; //移植每个表 RENAME TABLE hbweb.aircraft_info TO hbwebTemporary. ...

  4. IIS网站发布容易出现的几个问题

    1. 更新版本或者重新安装.net Framework: 2. 更改配置文件节点: 3. 访问权限问题的更改:

  5. 简单天气应用开发——API接口

    寒假回家无事,想到自学iOS开发已有一段时间,还没做过真正自己的应用,就起了做一个天气预报App的念头. 想到就做.天气预报第一步自然是找到好用的API接口来获取天气信息.在百度上搜索了一圈,找到的都 ...

  6. 设计模式(十一)代理模式Proxy(结构型)

    1.概述 因为某个对象消耗太多资源,而且你的代码并不是每个逻辑路径都需要此对象, 你曾有过延迟创建对象的想法吗 ( if和else就是不同的两条逻辑路径) ? 你有想过限制访问某个对象,也就是说,提供 ...

  7. Spring 之 控制反转(IoC), 依赖注入(DI)和面向切面(AOP)

    关于依赖注入, 这篇博文写的非常简单易懂. https://github.com/android-cn/blog/tree/master/java/dependency-injection 此外, 博 ...

  8. Android 调用webservice faultactor 错误

    1.错误:02-05 09:56:17.266: E/WebServiceUtil(801): --- 内部异常堆栈跟踪的结尾 ---' faultactor: 'null' detail: org. ...

  9. Mysql开启远程

    改表法: x:\>mysql -u root -pvmware mysql> use mysql;mysql> update User set Host = ‘%’ where Us ...

  10. 运用Python语言编写获取Linux基本系统信息(一):获得Linux版本、内核、当前时间

    申请博客有一段时间了,然而到现在还一篇没有写过..... 主要因为没有想到需要写些什么,最近在学习Python语言,照着书上看了看最基础的东西,发现根本看不进去,而且光看的话今天看了觉得都理解懂了,过 ...