我正在尝试使用R中的OLS结果填充命名列表。我尝试了
li = list()
for (i in 1:10)
li[["RunOne"]][i] = lm(y~x)
此处RunOne
是一个随机名称,指定拟合运行一,y
和x
是一些预定义的向量。这打破并给我错误
Warning message:
In l[["RunOne"]][1] = lm(y ~ x) :
number of items to replace is not a multiple of replacement length
虽然我理解错误,但我不知道如何解决它。
答案 0 :(得分:7)
有两种解决方案(具体取决于您想要做什么)。
创建一个列表,并为每个元素添加一个lm
对象:
li = list()
for (i in 1:10)
li[[i]] = lm(y~x)
列出清单:
li[["RunOne"]] = list()
for (i in 1:10)
li[["RunOne"]][[i]] = lm(y~x)
通常,单括号[ ]
用于向量和数据框,双括号用于列表。