R程序-我想生成随机样本,但有指定的下限和上限&书信电报;x=绝对值(rnorm(100,平均值=10,标准差=5))

R程序-我想生成随机样本,但有指定的下限和上限&书信电报;x=绝对值(rnorm(100,平均值=10,标准差=5)),r,R,我正在使用R软件进行学习 我尝试生成随机样本,但我不知道如何获得范围之间的样本 我想生成平均值为10,标准偏差为5的随机样本,但数据有规定的下限和上限。例如,汽车行驶里程在14到20英里之间。与一些评论者不同,我没有看到您将结果集的平均值设为10,而是想知道如何将样本限制在(样本)分布“右侧”的特定范围内: > x=abs(rnorm(100,mean=10,sd=5)) > Hmisc::describe(x) x n missing unique Mean

我正在使用R软件进行学习

我尝试生成随机样本,但我不知道如何获得范围之间的样本


我想生成平均值为10,标准偏差为5的随机样本,但数据有规定的下限和上限。例如,汽车行驶里程在14到20英里之间。

与一些评论者不同,我没有看到您将结果集的平均值设为10,而是想知道如何将样本限制在(样本)分布“右侧”的特定范围内:

> x=abs(rnorm(100,mean=10,sd=5))

> Hmisc::describe(x)
x 
      n missing  unique    Mean     .05     .10     .25     .50     .75     .90     .95 
    100       0     100   10.01   2.713   3.830   6.995   9.899  13.338  15.890  17.244 

lowest :  0.2297  1.2789  1.4875  2.1591  2.7105
highest: 17.4245 18.2214 18.5216 20.6713 29.7004 
> x[ x >10 & x < 14 ]
 [1] 12.18180 12.20234 10.88162 13.29551 11.93855 12.88514 10.16698 11.59605 10.49250
[10] 11.87572 12.39030 11.94950 13.46728 13.82126 10.83314 12.43298 10.14287 11.55421
[19] 10.30776 12.24819 13.55493 10.49318 10.40018 12.51552 10.63401 10.15365 11.16643
[28] 11.01404

> x[ x >14 & x < 20 ]
 [1] 15.67082 14.23257 15.32423 17.23473 16.49950 17.19964 15.98334 15.87908 17.42446
[10] 18.22140 14.20300 14.40036 15.82410 15.15962 18.52156 14.55390 15.36474 14.37368
[19] 16.90896 14.61357
>x=abs(rnorm(100,平均值=10,标准差=5))
>描述(x)
x
n缺失唯一均值.05.10.25.50.75.90.95
100       0     100   10.01   2.713   3.830   6.995   9.899  13.338  15.890  17.244 
最低:0.22971.2789 1.4875 2.15912.7105
最高:17.424518.221418.521620.671329.7004
>x[x>10&x<14]
[1] 12.18180 12.20234 10.88162 13.29551 11.93855 12.88514 10.16698 11.59605 10.49250
[10] 11.87572 12.39030 11.94950 13.46728 13.82126 10.83314 12.43298 10.14287 11.55421
[19] 10.30776 12.24819 13.55493 10.49318 10.40018 12.51552 10.63401 10.15365 11.16643
[28] 11.01404
>x[x>14&x<20]
[1] 15.67082 14.23257 15.32423 17.23473 16.49950 17.19964 15.98334 15.87908 17.42446
[10] 18.22140 14.20300 14.40036 15.82410 15.15962 18.52156 14.55390 15.36474 14.37368
[19] 16.90896 14.61357

自由地解释这个问题,你可以生成一个平均值为10,sd为5的分布,然后简单地选择14到20之间的值

rnorm(1000000,mean=10,sd=5) -> x
x[x>14 & x <20][1:100] -> x
rnorm(1000000,平均值=10,标准差=5)->x
x[x>14&x

来自哪个分布?如果你在寻找截断正态分布,有一个R包:使用
runif
可以很容易地生成具有特定范围的均匀分布。获得特定SD更为困难。如果范围在14到20之间,当你的最低可能va为10时,就不可能得到平均值lue是14。此外,当你的范围只有6时,标准偏差不可能是5。你可能需要回顾一些关于随机抽样和分布的基本统计资料。好吧,如果你是贝叶斯,你的意思是后验平均数,那么这当然是可能的,有一些强的先验知识。:)你可能想进一步搜索n“拒绝取样”。