2015-09-20 70 views
2

我是R编程的新手。在R中,如何构造一个向量Y,其分量是从正态分布派生的?

我想在这里问专家为您解答有关R.

的代码

首先,让矢量xc(2,5,3,6,5)

我希望再拍矢量y,其第i个分量源自N(sum(x[1]:x[i]),1)

(即y的第i个分量如下正常distribuion与方差1和平均求和从x[1](=2)x[i] (i=1,2,3,4,5)

例如,y的第三组分遵循具有均值x[1]+x[2]+x[3]=2+5+3=10,方差为1

我想知道[R制造上文描述的“不使用重复的语法,例如用于向量y的一个代码,而等正常distribuion “。

因为我是R编程的新手,并且先天计算统计的感觉很差,所以我似乎并没有碰到R的巧妙代码。

请让我知道R的代码制作矢量上面解释不使用重复的语法如,while等

以前,我想非常感谢你由衷地为你铭记的答案。

+4

Google是你的朋友。我想你想要'rnorm(长度(x),平均= cumsum(x),sd = 1)' – Frank

回答

3

你可以做

rnorm(length(x), mean = cumsum(x), sd = 1) 

rnorm是家庭与正态分布*norm相关功能的一部分。要看到一个响亮的名字作品的功能如何,使用

help("rnorm") # or ?rnorm 

cumsum需要载体的累计总和。

搜寻功能

在R,它通常是大多数功能,你能想到的已经有人已经实现了一个安全的赌注。因此,例如,在OP的情况下,没有必要推出自定义循环。

*norm相同的命名约定遵循其他发行版,例如rbinom。您可以点击?rnorm底部的链接以访问?Distributions,其中列出了R中的其他人。

如果你是从头开始,不知道任何有关函数的名称,请考虑使用内置的搜索工具,如:

help.search("normal distribution") # or ??"normal distribution" 

如果这揭示了什么,但你仍然认为函数必须存在,可以考虑安装和加载sos包,它允许

findFn("{cumulative mean}")   # or ???"{cumulative mean}" 
findFn("{the pareto distribution}") # or ???"{the pareto distribution}" 

除此之外,还有其他在线资源,像谷歌,一点都不错。然而,关于Stack Overflow功能的问题是一个有风险的提议,因为如果所需功能的实现不存在或者这里的人们不知道,它将不会很好地收到(downvoted和作为“工具请求”关闭)。堆栈溢出的新“文档”子网站将有望成为查找R函数的资源。

相关问题