[R]中用于数据帧数组的方法

[R]中用于数据帧数组的方法,r,dataframe,R,Dataframe,我正在寻找一种最佳做法,以存储在几个不同值上执行的评估的多个向量结果。目前,我的工作代码执行以下操作: q <- 55 value <- c(0.95, 0.99, 0.995) a <- rep(0,q) # Just initialize the vector b <- rep(0,q) # Just initialize the vector for(j in 1:length(value)){ for(i in 1:q){ a[i]<-rnorm

我正在寻找一种最佳做法,以存储在几个不同值上执行的评估的多个向量结果。目前,我的工作代码执行以下操作:

q <- 55
value <- c(0.95, 0.99, 0.995)
a <- rep(0,q) # Just initialize the vector
b <- rep(0,q) # Just initialize the vector
for(j in 1:length(value)){
  for(i in 1:q){
    a[i]<-rnorm(1, i, value[j]) # just as an example function
    b[i]<-rnorm(1, i, value[j]) # just as an example function
  }
  df[j] <- data.frame(a,b)
}

q我不太确定你想做什么,所以请告诉我这是否是你想要的

q = 55
value <- c(sd95=0.95, sd99=0.99, sd995=0.995)

a = sapply(value, function(v) {
  rnorm(q, 1:q, v)
})

这次我们对
q
有两个不同的值,我们将上面的
sapply
代码包装到另一个调用
sapply
中。内部
sapply
执行与以前相同的操作,但现在它从外部
sapply
获取
q
的值(使用虚拟变量
i
)。我们正在创建两个数据帧,一个称为
a
,另一个称为
b
a
有10行,
b
有20行(由于我们在
q
中设置了值)。两个数据帧都存储在名为
df.list
的列表中

我想不清楚你在找什么。首先,
不包含
级别
,因此请小心使用术语。其次,您根本没有使用data.frames。第三,如果你只想对
a
b
的元素应用一个函数,你可以使用
sapply
。对于值与级别的关系,我很抱歉,我起草了这篇文章,然后意识到R使用级别作为关键字并试图更改它。我使用rnorm(1,I,value[j])作为一组更复杂的计算的占位符,而不是(imho)适用于这个问题。我试图实现的是创建一个对象,该对象将包含所有三个计算值数据集的数据。该对象将被传递到报告函数以创建我需要的图形。
q <- list(a=10, b=20)
value <- list(sd95=0.95, sd99=0.99, sd995=0.995)

df.list = sapply(q, function(i) {
    sapply(value, function(v) {
      rnorm(i, 1:i, v)
    })
  })