【问题标题】:Achieving t random variables with each different df and ncp in R?用R中的每个不同的df和ncp实现t个随机变量?
【发布时间】:2017-12-05 16:08:52
【问题描述】:

我正在尝试使用 rt() 生成 5 个随机 t 变量,这 5 个变量中的每一个都有一个特定的 df(分别从 1 到 5 ) 和特定的ncp(分别为seq(0, 1, l = 5))。因此,5 个随机 t 变量,每个变量都有不同的 df 和不同的 ncp

为了实现上述目标,我尝试了以下,但没有成功。什么是实现我上面描述的高效 R 代码?

vec.rt = Vectorize(function(n, df, ncp) rt(n, df, ncp), c("n", "df", "ncp"))

vec.rt(n = 5, df = 1:5, ncp = seq(0, 1, l = 5))

或者

mapply(FUN = rt, n = 5 , df = 1:5, ncp = seq(0, 1, l = 5))

通知

rt(n = 5, df = 1:5, ncp = seq(0, 1, l = 5))

R 给出以下警告:

Warning message: In if (is.na(ncp)) { : the condition has length > 1 and only the first element will be used

【问题讨论】:

    标签: r function random


    【解决方案1】:

    重新表述您的问题有助于找到答案:您需要来自 5 个随机变量的样本长度为 1 (n = 1),每个变量都有不同的参数。

    mapply(FUN = rt, n = 1 , df = 1:5, ncp = seq(0, 1, l = 5))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-04-10
      • 1970-01-01
      • 2019-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-22
      相关资源
      最近更新 更多