2012-03-18 3 views
0

Rでlfeパッケージを使用して、多くの固定効果がある回帰を行うので、lmは問題ありません固定効果は個別レベルではないので、plmもそうです)。私は問題なしで出力を得ますが、今はLaTeXテーブルで使用したいと思います。しかし、私が試したパッケージ(xtableapsrtablelatexコマンドのHmiscなど)には、felmというオブジェクトのメソッドがあります。だから私の質問は、私は何をするのですか? lm.methodにアクセスしてそれをひねり、felmオブジェクトを読み取る方法がありますか? felmオブジェクトをlmフォームに強制する方法はありますか?何か案は?フェムトRオブジェクトをlm形式に強制するか、LaTeXテーブルに印刷する方法

答えて

4

胚盤葉に移植手術を行うことは成功する可能性があります。そのようなキメラの作成は重要な基礎となる仮定に暴力をしていないされているかどうかを決定することはあなたの責任です:

# with the first example in the lfe:: 
est <- lfe::felm(y ~ x+x2+G(id)+G(firm)) 
class(est) <- c("felm", "lm") 
require(xtable) 
xtable(est) 
#---------------- 
% latex table generated in R 2.14.0 by xtable 1.6-0 package 
% Sun Mar 18 10:42:04 2012 
\begin{table}[ht] 
\begin{center} 
\begin{tabular}{rrrrr} 
    \hline 
& Estimate & Std. Error & t value & Pr($>$$|$t$|$) \\ 
    \hline 
x & 1.0937 & 0.0971 & 11.26 & 0.0000 \\ 
    x2 & 0.4597 & 0.1177 & 3.91 & 0.0002 \\ 
    \hline 
\end{tabular} 
\end{center} 
\end{table} 

そのクラスの移植を行う前に、私はそれがLM-オブジェクトに似ているかどうかを確認するためにfelmオブジェクトを見なかったし、それはしました。 summary(est)は、lmのユーザーが期待する出力を返します。

私はS4メソッドのユーザーは特に成功していませんが、いくつかのリンクをたどっています(これは実際にあなたが尋ねたことをするものではありません)。 LFEパッケージの作者として

require(stats) 
setOldClass(c("felm", "lm")) 
setMethod("modelInfo", "summary.felm", function(x) { 
    env <- sys.parent() 
    digits <- evalq(digits, env) 
    model.info <- list(
         "$N$"=formatC(sum(x$df[1:2]),format="d"), 
         "Resid. sd" = formatC(x$sigma,format="f",digits=digits)) 
    class(model.info) <- "model.info" 
    return(model.info) 
}) 
#in method for ‘modelInfo’ with signature ‘"summary.felm"’: no definition for class “summary.felm” 
#[1] "modelInfo" 
apsrtable(est,est, digits=1, align="l", 
      stars=1, model.counter=0, order="rl", 
      coef.rows=1, col.hspace="3em", float="sidewaystable") 
#---------------------- 
\begin{sidewaystable}[!ht] 
\caption{} 
\label{} 
\begin{tabular}{ l D{.}{.}{1}D{.}{.}{1}@{\hspace{3em}}D{.}{.}{1}D{.}{.}{1} } 
\hline 
    & \multicolumn{ 2 }{ c }{ Model 0 } & \multicolumn{ 2 }{ c }{ Model 1 } \\ \hline 
x  & 1.1 ^* & (0.1) & 1.1 ^* & (0.1) \\ 
x2  & 0.5 ^* & (0.1) & 0.5 ^* & (0.1) \\ 
$N$  & \multicolumn{2}{c}{172} & \multicolumn{2}{c}{172}\\ 
Resid. sd & \multicolumn{2}{c}{ } & \multicolumn{2}{c}{ } \\ \hline 
\multicolumn{5}{l}{\footnotesize{Robust standard errors in parentheses}}\\ 
\multicolumn{5}{l}{\footnotesize{$^*$ indicates significance at $p< 0.05 $}} 
\end{tabular} 
\end{sidewaystable} 
+0

これは素晴らしいです! 他のパッケージで動作しない理由についての手がかりは? –

+0

私は本当にapsrtableパッケージを使う必要があるので、これを聞いています。同じテーブルに多くの回帰を許すようなもの –

1

、私はこの上でいくつかの光を当てることができますヘルプページに及び改造を行うこと、これは私が警告を無視した後、得たものです。 felmオブジェクトはlmオブジェクトを模倣するが、いくつかの違いがあることは事実である。

データマトリックスのコピーは含まれていません。 lfe-packageは、ギガバイト級の非常に大きなデータセットを対象としています。したがって、メモリを節約するためにいくつかの努力がなされている。もう1つの違いは、felmオブジェクトには、lmと同じ方法でシステムのランクに関する情報がなく、lmによって使用されたqr分解も含まれていないことです。 felmはqr分解を使用せず、ランクはやや複雑な問題になります。これの現実は、いくつかの標準的なメソッドがfelmオブジェクトで動作するのに対し、他のオブジェクトは動作しないということです。 lfeの初期のバージョンでは、実際には 'felm'の継承クラスとして 'lm'が使用されていましたが、これは実際にはlmオブジェクトであるという印象を与えるので削除しました。

関連する問題