一组不同大小的数组

时间:2017-01-19 13:39:18

标签: arrays r matrix

我正在学习R并且我想制作一个“数组数组”(不确定表达式是否正确)插入例如这些值

N_seq = c(10,50,100,500,1000)

在这个函数里面(不正确):

x = rnorm(N_seq,3.2,1)

所需的结果应该类似于由五个数组(length(N_seq) = 5)生成的对象,其中每个数组等于x插入N_seq的每个值的结果(以便{ {1}}的值为x[1],长度为10,rnorm(N_seq[i], 3.2, 1)的值为x[2],长度为50等。

1 个答案:

答案 0 :(得分:1)

对于参差不齐的数组,请使用"list"。这是一种特殊类型的" vector"在R.您不仅可以在每个列表元素中保存差异长度的向量,还可以为每个列表元素保存不同类型的对象。

"列表的lapply功能适用"经常用于处理列表和/或返回列表。对于您的任务,您可以这样做:

lapply(N_seq, FUN = rnorm, mean = 3.2, sd = 1)

lapply将函数FUN应用于N_seq的每个向量元素,其中mean = 3.2sd = 1是传递给FUN的其他参数,其中这里是rnorm