2016-08-12 7 views
0

質問は簡単です:lqmmパッケージのサマリー関数からタウの各レベルの標準誤差、下限、各上限の値を取得する方法は簡単ですか?lqmmパッケージのサマリーからの標準誤差の値

   Value  Std. Error lower bound upper bound Pr(>|t|)  
(Intercept) value1   13.9770730 0.3399716 13.2938744  14.6603 < 2.2e-16 *** 
factor(a)2 value2   -0.6249463 0.0359903 -0.6972716  -0.5526 < 2.2e-16 *** 
factor(b)2 value3   0.3511184 0.0500702 0.2504986  0.4517 6.344e-09 *** 

私は13.977という値を取得したいと考えています。それはどういうわけか? QR2013SKDHRP $ tauを使用すると、最初の列の係数と他のほとんどの値は取得できますが、標準誤差、下限、上限は取得できません。

+0

ほとんどの 'summary'関数は、値の名前付き項目として行列を返します。一般的に、これらの名前はヘルプページに表示されます。そのパッケージ文書の要約値はありませんか? –

+0

これまで、サマリーとsummary.lqmは同一ではないことを知りました。最初は、summary.lqmがエラーを言っていたので、私は要約だけを使用しましたが、今は動作します。しかし、ビネットは非常に弱く、summary.lqmに関する価値のそれぞれの可能性は言及していません。 –

+0

クラス 'lqm'のオブジェクトに対して' summary'を実行すると、実際には 'summary.lqm'関数が実行されています。 –

答えて

0

ファンクションsummary.lqmmファンクションは、要求された各tquの前に値の行列を持つリストを再実行します。ヘルプページによれば、この結果は"tTable"という名前の葉にあります。出発点としてヘルプページで例を使用:

> res <- summary(fitOi.lqmm) 
Warning message: 
In errorHandling(OPTIMIZATION$low_loop, "low", control$LP_max_iter, : 
    Lower loop did not converge in: lqmm. Try increasing max number of iterations (500) or tolerance (1e-05) 

> res$tTable 
$`0.1` 
       Value Std. Error lower bound upper bound  Pr(>|t|) 
(Intercept) 16.7336088 0.7300274 15.2665637 18.2006538 7.620900e-28 
age   0.5221987 0.0783630 0.3647224 0.6796751 2.201244e-08 

$`0.5` 
       Value Std. Error lower bound upper bound  Pr(>|t|) 
(Intercept) 16.8119676 0.72758041 15.3498401 18.2740952 5.312804e-28 
age   0.6188025 0.08742306 0.4431193 0.7944857 5.018630e-09 

$`0.9` 
       Value Std. Error lower bound upper bound  Pr(>|t|) 
(Intercept) 16.8267888 0.7346688 15.3504165 18.3031611 7.894189e-28 
age   0.7961899 0.1008876 0.5934487 0.9989311 2.796707e-10 

コメントで報告された問題は、lqmlqmmの選択に関係していないようです。

fit.lqm 
#------------------- 
Call: lqm(formula = y ~ x, data = test, tau = p, control = list(verbose = FALSE, 
    loop_tol_ll = 1e-09), fit = TRUE) 

Fixed effects: 
      tau = 0.25 tau = 0.50 tau = 0.75 
(Intercept) 29.322072 29.954761 30.628379 
x    1.124451 1.182257 1.251657 

Degrees of freedom: 500 total; 498 residual 
#------------ 
names(summary(fit.lqm)) 
#--------------  
[1] "0.25"  "0.50"  "0.75"  "theta"  "scale"  "call"  
[7] "term.labels" "terms"  "nobs"  "edf"   "dim_theta" "rdf"   
[13] "tau"   "x"   "y"   "weights"  "levels"  "InitialPar" 
[19] "control"  "tTable" 

summary(fit.lqm)$tTable 
#----------------  
[[1]] 
       Value Std. Error lower bound upper bound  Pr(>|t|) 
(Intercept) 29.322072 0.1071627 29.1067201 29.537423 1.089432e-79 
x   1.124451 0.2137049 0.6949946 1.553907 3.134769e-06 

[[2]] 
       Value Std. Error lower bound upper bound  Pr(>|t|) 
(Intercept) 29.954761 0.1001000 29.7536022 30.155919 1.358822e-81 
x   1.182257 0.1447352 0.8914013 1.473114 1.057212e-10 

[[3]] 
       Value Std. Error lower bound upper bound  Pr(>|t|) 
(Intercept) 30.628379 0.0833481 30.4608850 30.795874 5.813793e-86 
x   1.251657 0.1736253 0.9027443 1.600571 3.150189e-09 

出力に第1の行列のStd.Error列にアクセスする方法を示す:

あなたは ?lqmヘルプページ上の例に適用 summary.lqmの出力を見て、結果の同じ種類を取得します
> summary(fit.lqm)$tTable[[1]][, "Std. Error"] 
(Intercept)   x 
    0.1296308 0.2851553 

最初の値がtauの場合、「標準誤差の値、下限、上限」を1つの回答にまとめたい場合は、

+0

summary.lqmmは使用できません。「1のエラー:dim_theta_z:長さ0の引数」です。したがって、summary.lqm関数だけを使用する必要があり、そのような可能性はありません。しかし、ランダムな効果や固定効果の原因となる変数を決定する変数はありません。 –

+0

あなたがデモしているケースでさえ、動作しません。私はres $ tTableを呼び出した後、カラムにアクセスできない[[1]]、... [[n]]パーツのリストを表示します。そして、$ tTable $ 0.1は全く動作しません。 –

+0

これはリスト内の行列です。行列の列にアクセスするために$を使用することはできません。 '[' 'を使う必要があります。 –

関連する問題