我有一个数据集,分为 20 个组。存储每组数据(2 列数据)的矩阵存储在一个列表中,以便我可以在循环中对每个集合执行函数。我想将可能在另一个矩阵中运行的任何函数的输出存储起来。
例如,如果我在所有 20 个组上运行 fitdistr(),我希望函数的输出存储在一个矩阵中,这样我就可以调用 distribution[1] 来调用第 1 组的结果。我尝试了以下:
distribution<-ls()
for(i in (1:20))
{ distribution[[i]]<-fitdistr(as.numeric(data[[i]]$Column2,"normal") }
这成功地存储了输出,我可以调用:
distribution[1]
问题是 fitdistr() 会产生 2 列数据 - 平均值和标准差。我检查了我不能调用给定点的平均值:
names(distribtuion)
"NULL"
所以我显然不能调用 get 方法,比如:
distribution[1]$mean
我将寻找均值和标准差(以及其他分布的其他参数)的趋势,所以如果可能的话,我希望将 fitdistr() 的结果以某种方式存储在矩阵中。即使我只能以某种方式调用平均值,在运行该函数时,我也可以创建一个空向量并将其填充到一个循环中,然后重复标准偏差。
我考虑过创建一个足够大的空矩阵来存储数据(因此它将是 20 行,每组 1 行,2 列,每个计算值 1)。我仍然不确定我将如何规定我希望将计算的平均值存储在第 1 列中,并将计算的标准偏差存储在第 2 列中。同样,这是一次仅向函数询问其多个输出中的一个的问题.
我还研究了其中一个应用功能,但这些似乎不适合我正在做的事情。