R 如何构造基于对数正态参数的向量

R 如何构造基于对数正态参数的向量,r,broom,R,Broom,我有以下向量: foo <- c(1.376, 1.132, 0.828, 0.88, 1.124, 0.955, 1.292, 0.995, 1.207, 1.076, 1.085, 1.061, 0.918, 1.097, 1.505, 1.141, 1.001, 0.927, 1.339, 1.07, 1.332, 0.951, 0.969, 0.904, 0.89, 0.942, 1.141, 0.798, 0.856, 0.819, 1.055, 1.262, 0.919,

我有以下向量:

foo <- c(1.376, 1.132, 0.828, 0.88, 1.124, 0.955, 1.292, 0.995, 1.207, 
1.076, 1.085, 1.061, 0.918, 1.097, 1.505, 1.141, 1.001, 0.927, 
1.339, 1.07, 1.332, 0.951, 0.969, 0.904, 0.89, 0.942, 1.141, 
0.798, 0.856, 0.819, 1.055, 1.262, 0.919, 1.024, 1.034, 1.088, 
1.183, 1.214, 1.159, 0.952, 0.912, 0.812, 0.985, 1.097, 0.948, 
1.168, 1.052, 0.922, 1.06, 0.741, 0.797, 0.952, 1.024, 1.858, 
1.073, 1.107, 0.853, 0.931, 0.732, 1.218, 1.09, 1.177, 0.931, 
1.105, 1.115, 1.221, 0.948, 1.146, 1.201, 1.16, 0.542, 1.067, 
1.056, 1.013, 0.986, 0.971, 1.125, 1.127, 0.971, 1.167, 1.148, 
1.074, 1.089, 1.001, 0.715, 0.945, 1.319, 1.15, 0.861, 0.733, 
0.783, 0.704, 1.176, 0.766, 1.466, 0.88, 0.873, 1.906, 1.584, 
1.076)
我的问题是如何使用上述参数创建与
foo
长度相同的新向量(我们称之为
bar

我试过这个(很可能是错的):


我认为你需要这样做:

rnorm(foo,mean=0.03062806,sd=0.01947609)
问题是您在rnorm的参数中使用了
log
函数

在数学上,如果您看到日志(0.01947609)是一个负数(-3.938568),在文档中对其进行了指定,则对于sd<0的情况,它将给出一个NaN,并将返回一个NaN 我在下面给出了参考资料

?rnorm
的文档中:

n以外的数值参数循环到 结果。仅使用逻辑参数的第一个元素

当sd=0时,当sd减小到0时,会给出极限值,即点质量 穆。sd<0是一个错误,返回NaN

输出命令的示例:

> rnorm(foo,mean=0.03062806,sd=0.01947609)
  [1]  0.032124378  0.042014230  0.045366499 -0.001474950
  [5]  0.061332938  0.008669682  0.019695857  0.042559250
  [9]  0.041862975 -0.010617882  0.067133856  0.016494814

我不明白。你想要在向量
条中得到什么?@MrFlick
只是一个新的所需向量的占位符。看到我的更新了。
rnorm(foo,mean=0.03062806,sd=0.01947609)
> rnorm(foo,mean=0.03062806,sd=0.01947609)
  [1]  0.032124378  0.042014230  0.045366499 -0.001474950
  [5]  0.061332938  0.008669682  0.019695857  0.042559250
  [9]  0.041862975 -0.010617882  0.067133856  0.016494814