如何在列表中存储数据-R
我希望有人能帮上忙 我使用R,我已经达到了一种需要存储函数返回的数据的情况,数据以向量的形式存在。例如,函数可能返回:如何在列表中存储数据-R,r,R,我希望有人能帮上忙 我使用R,我已经达到了一种需要存储函数返回的数据的情况,数据以向量的形式存在。例如,函数可能返回: c(1,2,3,4,5) 假设我已经创建了一个列表: #I have to store 10 values alpha = list(rep(NA, 10)) 如何在列表中存储返回的向量?例如,以下内容: alpha[1] = c(1,2,3,4,5) 那么: alpha = (c(1,2,3,4,5), NA, NA, NA, NA, NA, NA, NA, NA, N
c(1,2,3,4,5)
假设我已经创建了一个列表:
#I have to store 10 values
alpha = list(rep(NA, 10))
如何在列表中存储返回的向量?例如,以下内容:
alpha[1] = c(1,2,3,4,5)
那么:
alpha = (c(1,2,3,4,5), NA, NA, NA, NA, NA, NA, NA, NA, NA)
任何帮助都将不胜感激,谢谢。看来您可能需要学习如何处理列表。它们是R()中的一个强大功能
apply
系列(lappy
和mappy
等)通常可以帮助您避免此类行为。但要回答你的问题:
alpha <- as.list(rep(NA, 10))
alpha[[1]] <- c(1, 2, 3, 4, 5)
print(alpha)
#> [[1]]
#> [1] 1 2 3 4 5
#>
#> [[2]]
#> [1] NA
#>
#> [[3]]
#> [1] NA
#>
#> [[4]]
#> [1] NA
#>
#> [[5]]
#> [1] NA
#>
#> [[6]]
#> [1] NA
#>
#> [[7]]
#> [1] NA
#>
#> [[8]]
#> [1] NA
#>
#> [[9]]
#> [1] NA
#>
#> [[10]]
#> [1] NA
另外,知道[
运算符返回列表,而[[
运算符返回列表的元素也是很有帮助的。(这同样适用于替换)
回答您的后续问题:
list
尝试定义一个列表(例如list(obj,obj2,obj3)
),而as.list
尝试将一个对象转换为一个列表。由于rep()
创建了一个向量,list(rep())
为您提供了一个长度为1的列表(输出为rep()
在第一个元素中)。当您希望向量以列表形式显示时,可以使用as.list
方法。您可以使用as.list(rep(NA,10))
使用double[[
-soalpha[[1]=c(1,2,3,4,5)
可以。超级感谢您,这很好,我可以问一下list和as.list之间的区别吗?请参阅更新的答案,地址list
与as.list
。您可以通过在R控制台中键入?list
获得相同的帮助。
myfunc <- function(input) {
return(input + 10)
}
lapply(1:10, myfunc)
#> [[1]]
#> [1] 11
#>
#> [[2]]
#> [1] 12
#>
#> [[3]]
#> [1] 13
#>
#> [[4]]
#> [1] 14
#>
#> [[5]]
#> [1] 15
#>
#> [[6]]
#> [1] 16
#>
#> [[7]]
#> [1] 17
#>
#> [[8]]
#> [1] 18
#>
#> [[9]]
#> [1] 19
#>
#> [[10]]
#> [1] 20