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

如何用R语言rnorm()函数生成1000个大小为100的样本?

用rnorm()生成1000个大小为100的正态样本

你的现有代码ech<-rnorm(n)只生成了1个大小为100的正态样本,要生成1000个这样的样本,有两种常用的实现方式:

方法一:用矩阵存储(适合批量操作)

把每个样本作为矩阵的一行(或一列),一次性生成所有数据:

# 定义参数
sample_size <- 100  # 单个样本的观测数
num_samples <- 1000 # 需要生成的样本总数

# 生成1000个大小为100的样本,每行对应一个样本
samples_matrix <- matrix(
  data = rnorm(sample_size * num_samples), 
  nrow = num_samples, 
  ncol = sample_size
)
  • 这里rnorm(sample_size * num_samples)先生成100000个标准正态分布的随机数,再通过matrix()将其拆分为1000行、每行100个元素的矩阵
  • 要提取第k个样本,直接用samples_matrix[k, ]即可

方法二:用列表存储(适合逐个处理样本)

如果需要对每个样本单独做后续操作,用列表存储更灵活:

# 生成包含1000个样本的列表,每个元素是一个长度为100的向量
samples_list <- lapply(1:num_samples, function(x) rnorm(sample_size))
  • lapply()会循环1000次,每次调用rnorm(sample_size)生成一个样本,最终返回一个包含1000个向量的列表
  • 要提取第k个样本,用samples_list[[k]]

验证结果

可以用以下代码确认生成的样本符合要求:

# 检查单个样本的长度
length(samples_list[[1]]) # 输出:100
# 检查样本总数
length(samples_list) # 输出:1000

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 05:38:23