texreg
は、extract
という汎用関数を使用して、モデルオブジェクトから関連データを取得し、その結果のtexreg
オブジェクトを処理して回帰テーブルを作成します。 texreg
のモデルの範囲を拡張するには、extract
関数の独自のメソッドを記述することができます。
Zelig-relogit
オブジェクトは明らかに、オブジェクトの中のどこかに関連するデータを持つglm
オブジェクトを格納し、別のクラス名を付けます。したがって、このサブオブジェクトのコピーを作成し、そのクラス名を修正し、既存のextract.glm
メソッドをこのオブジェクトに適用してデータを抽出するのは比較的簡単です。より具体的には:
# extension for Zelig-relogit objects (Zelig package >= 5.0)
extract.Zeligrelogit <- function(model, include.aic = TRUE, include.bic = TRUE,
include.loglik = TRUE, include.deviance = TRUE, include.nobs = TRUE, ...) {
g <- model$zelig.out$z.out[[1]]
class(g) <- "glm"
e <- extract(g, include.aic = include.aic, include.bic = include.bic,
include.loglik = include.loglik, include.deviance = include.deviance,
include.nobs = include.nobs, ...)
return(e)
}
setMethod("extract", signature = className("Zelig-relogit", "Zelig"),
definition = extract.Zeligrelogit)
このコードはextract
関数のZelig-relogit
方法を作成します。 screenreg(relogit)
のようなものを入力して使用できます。relogit
は、Zelig-relogit
オブジェクトの名前です。結果は次のようになります。
==================================
Model 1
----------------------------------
(Intercept) -9446502571.59 ***
(62615.78)
x1 19409089045.70 ***
(141084.20)
x2 856836055.47 ***
(98175.65)
----------------------------------
AIC 6.00
BIC 4.83
Log Likelihood -0.00
Deviance 0.00
Num. obs. 5
==================================
*** p < 0.001, ** p < 0.01, * p < 0.05
をより一般的にはあなたがtexreg
持つ任意のZelig
モデルの仕事をしたい場合、あなたは、関連する情報を見つけるためにmodel$zelig.out$z.out[[1]]
をご覧ください。私は、次のtexreg
リリースにZelig-relogit
extract
メソッドを含める予定です。
ありがとう@PhilipLeifeld、それは働いた! –