Skip to content

Commit c4d6eaf

Browse files
committed
use Durbin factor objects
1 parent 81f3642 commit c4d6eaf

File tree

2 files changed

+29
-4
lines changed

2 files changed

+29
-4
lines changed

R/impacts.R

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -571,7 +571,20 @@ lagImpactMat <- function(x, reportQ=NULL) {
571571
}
572572
mat <- cbind(direct, indirect, total)
573573
colnames(mat) <- c("Direct", "Indirect", "Total")
574-
rownames(mat) <- attr(x, "bnames")
574+
bnames <- attr(x, "bnames")
575+
have_factor_preds <- attr(x, "have_factor_preds")
576+
if (!is.null(have_factor_preds)) {
577+
if (have_factor_preds) {
578+
xlevels <- attr(have_factor_preds, "xlevels")
579+
factnames <- attr(have_factor_preds, "factnames")
580+
rownames(mat) <- bnames
581+
} else {
582+
rownames(mat) <- bnames
583+
}
584+
} else {
585+
rownames(mat) <- bnames
586+
}
587+
575588
if (!is.null(reportQ) && reportQ) {
576589
if (is.null(x$res)) {
577590
Qobj <- attr(x, "Qres")
@@ -586,9 +599,9 @@ lagImpactMat <- function(x, reportQ=NULL) {
586599
Qobj$indirect <- matrix(Qobj$indirect, ncol=1)
587600
Qobj$total <- matrix(Qobj$total, ncol=1)
588601
}
589-
colnames(Qobj$direct) <- attr(x, "bnames")
590-
colnames(Qobj$indirect) <- attr(x, "bnames")
591-
colnames(Qobj$total) <- attr(x, "bnames")
602+
colnames(Qobj$direct) <- rownames(mat)
603+
colnames(Qobj$indirect) <- rownames(mat)
604+
colnames(Qobj$total) <- rownames(mat)
592605
rownames(Qobj$direct) <- paste("Q", 1:nrow(Qobj$direct), sep="")
593606
rownames(Qobj$indirect) <- paste("Q", 1:nrow(Qobj$indirect), sep="")
594607
rownames(Qobj$total) <- paste("Q", 1:nrow(Qobj$total), sep="")

R/sarlm_tests.R

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,18 @@ impacts.Sarlm <- function(obj, ..., tr=NULL, R=NULL, listw=NULL, evalues=NULL,
346346
iicept <- length(icept) > 0L
347347
zero_fill <- NULL
348348
dvars <- obj$dvars
349+
# have_factor_preds <- attr(x, "have_factor_preds")
350+
# if (!is.null(have_factor_preds)) {
351+
# if (have_factor_preds) {
352+
# xlevels <- attr(have_factor_preds, "xlevels")
353+
# factnames <- attr(have_factor_preds, "factnames")
354+
# rownames(mat) <- bnames
355+
# } else {
356+
# rownames(mat) <- bnames
357+
# }
358+
# } else {
359+
# rownames(mat) <- bnames
360+
# }
349361
if (obj$type == "lag" || obj$type == "sac") {
350362
if (iicept) {
351363
P <- matrix(beta[-icept], ncol=1)

0 commit comments

Comments
 (0)