将 netlm 中的拟合值和残差值填充到矩阵数据中的相应单元格中
Fill in fitted and residual values from netlm into respective cells in matrix data
我正在使用 sna
包中的 netlm()
对一个变量对另一个变量进行回归,以获得拟合值和残差值。我将 netlm()
中的 mode
参数设置为具有 10 倍 QAP 的无向 "graph"
。然后我检查了输出。
输出包含 12,880 个拟合值和残差值,鉴于我的数据维度为 161 * 161,这意味着它们代表下(或上)对角矩阵数据减去的 fitted/residual 值主对角线值 ((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,你可能需要转置
我正在使用 sna
包中的 netlm()
对一个变量对另一个变量进行回归,以获得拟合值和残差值。我将 netlm()
中的 mode
参数设置为具有 10 倍 QAP 的无向 "graph"
。然后我检查了输出。
输出包含 12,880 个拟合值和残差值,鉴于我的数据维度为 161 * 161,这意味着它们代表下(或上)对角矩阵数据减去的 fitted/residual 值主对角线值 ((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,你可能需要转置