将不同的n长度元素附加到R中的向量

时间:2018-08-20 13:38:02

标签: r vector append

我试图将元素添加到for循环中的向量中,并发现一个more elements supplied than there are to replace错误不断弹出。经过一些调查,我注意到这主要是由于第一个附加元素的长度为1,第二个元素的长度大于1。下面的示例代码。

我的问题是在这些时刻如何最好地应对?

示例代码:

some_list[[1]] = 1
some_list[[2]] = 1:10
some_list[[3]] = 20:30

output = c()
for (i in 1:lenth(some_list)){
    output[[i]] = some_list[i] * 10}

1 个答案:

答案 0 :(得分:1)

问题在于输出被定义为字符向量而不是列表。尝试以下方法:

some_list = list()
some_list[[1]] = 1
some_list[[2]] = 1:10
some_list[[3]] = 20:30

output = list()  # output should be a list
for (i in 1:length(some_list)){
    output[[i]] = some_list[[i]] * 10}