我有一个下一个 struct 数据帧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)
...

我不知道如何使用lappy(X,FUN=norm)来计算每个块的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)))))

R相关问答推荐

用单个表达匹配多个替代模式

根据收件箱中的特定值提取列名

在(g)子中使用asserable字符

R:更新后无法运行控制台

自动变更列表

如何使下一个按钮只出现在Rshiny 的一段时间后?""

通过在colname中查找其相应值来创建列

如何读取CSV的特定列时,给定标题作为向量

解析R函数中的变量时出现的问题

无法定义沿边轨迹的 colored颜色 渐变(与值无关)

如何从容器函数中提取conf并添加到ggplot2中?

如何根据数据帧中的值从该数据帧中提取值?

汇总数据帧中的复制列,保持行的唯一性

如何从向量构造一系列双边公式

通过初始的shiny 应用更新部署的shiny 应用的数据和参数,其中部署的应用程序显示为URL

ggplot R:X,Y,Z使用固定/等距的X,Y坐标绘制六边形热图

用多边形替换地块点

TidyVerse中长度不等的列结合向量

R-如何在ggplot2中显示具有不同x轴值(日期)的多行?

具有由向量定义的可变步长的序列