微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将来自 netlm 的拟合值和残差值填充到矩阵数据中的各个单元格中

如何解决将来自 netlm 的拟合值和残差值填充到矩阵数据中的各个单元格中

我使用 netlm() 包中的 sna一个变量回归到另一个变量,以获得拟合值和残差值。我将 mode 内的 netlm() 参数设置为无向 "graph",QAP 为 10 倍。然后我检查了输出

输出包含 12,880 个拟合值和残差值,假设我的数据维度为 161 * 161,这意味着它们表示下(或上)对角矩阵数据减去主对角线值的拟合/残差值( (161*161)/2 - 161 = 12880)。如果我想生成一个与我的数据维度相同的新矩阵,并用拟合值填充上下对角线,我如何确保这些值实际上会填充到相应的单元格中?

如果有人能对此有所了解,我们将不胜感激。我在下面提供了我的代码供您参考。

library(sna)


x <- readRDS(url("https://www.dropBox.com/s/v1kz95luew28o7u/xki_ratio2019.rds?dl=1"))
y <- readRDS(url("https://www.dropBox.com/s/yc7md37x6albxog/xki_lag.rds?dl=1"))

model.nl <- netlm(y[[1]],list(x),diag = FALSE,mode = "graph",nullhyp=c("qapx"),reps = 100)

dim(x)
161 161

length(model.nl$residuals)
12880

解决方法

类似的东西

resid <- matrix(NA,161,161)
resid[upper.tri(resid)] <- model.nl$residuals

不确定你是想从我的头顶上去掉 upper.tri 还是 lower.tri,你可能需要转置

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。