You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言循环从正态分布采样随机数出现NULL值问题求助

R代码循环采样问题解决

问题原因

你的代码里for (i in 10)这个循环条件仅让i取到10这一个值,循环只执行了一次,仅给S[[10]]赋值,而S[[1]]到S[[9]]从未被处理,因此返回NULL。

修正后的代码

将循环范围改为1:10,让i依次遍历1到10的所有数值:

n <- 1000 
Rnd <- rnorm(n,0,1)
S <- list()

for (i in 1:10)
{
  S[[i]] <- sample(Rnd, 1, replace = TRUE) 
}

# 查看结果
S

额外优化说明

  • 无需将向量Rnd转换为数据框R,直接使用sample(Rnd, 1)即可从正态分布生成的随机数中采样,代码更简洁高效。
  • 若无需保留1000个随机数的集合,可直接在循环中调用rnorm(1,0,1),每次生成一个新的正态随机数,省去提前生成批量数据的步骤:
S <- list()
for (i in 1:10) {
  S[[i]] <- rnorm(1, 0, 1)
}

内容的提问来源于stack exchange,提问作者absab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 19:32:37