如何在R中的数组中存储fitdist对象?

时间:2017-11-04 23:06:32

标签: arrays r

我想将fitdist的结果存储在数组中,

require(fitdistrplus)
fits = list()
fits[1] <- fitdist(data1,"norm")
fits[2] <- fitdist(data2,"norm")

但是我从R收到以下警告信息

In fits[1] <- fitdist(data1,"norm") :
  number of items to replace is not a multiple of replacement length

我不知道上面的代码段中存在什么问题。

1 个答案:

答案 0 :(得分:1)

您收到警告消息的原因是fits[1] 单位长度因此只能使用一个长度的对象,fitdist(data1,"norm")会返回长度的列表大于一个

您的选项正在使用

fits[[1]] <- list(fitdist(data1,"norm"))

如评论中所述:其工作原因是fits[[1]]的类可以是任何内容(而fits[1]始终是长度为1的列表)。

因此,如果您必须使用fits[1]格式,则可以使用

 fits[1] <- list(fitdist(data1,"norm")) 

这将使fitdist的输出成为列表的列表。