[英]Using lapply to nested list
我有一個下一個結構數據框 qw[[i]],i = 19(嵌套列表)。 例如:
dput(qw[[19]])
list(c(87.6755555555556, 36, 117.277222222222, 64.7858333333333
), c(46.44, 19.4966666666667, 207.101666666667, 92.5783333333333)
...
而且我不知道如何使用 lapply (X, FUN = norm),計算每個塊的范數:
list(c(87.6755555555556, 36, 117.277222222222, 64.7858333333333)
qnw <- lapply(matrix(unlist(qw)), FUN = norm)
在我得到同樣的錯誤之后:
Error in FUN(X[[i]], ...) : 'A' must be a numeric matrix
怎么修?
它看起來像是一個嵌套的vector
list
。 我們可以使用遞歸應用( rapply
)
rapply(qw, f = \(x) norm(matrix(x)))
或者使用嵌套的sapply/lapply
as.vector(sapply(qw, \(x) sapply(x, \(y) norm(matrix(y)))))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.