問題タブ [mgcv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1890 参照

r - ggplot confidence bands from gam predict$fit and predict$se.fit

I have the following variables:

prod: positive integer

tenure: positive numeric

cohort: factor

Here is some simulated data with these specifications.

I have fit the following model using mgcv:gam:

The get the predictions and their standard errors:

It is fairly straightforward to use package:ggplot2 to acquire the smoothed predictions mu for each cohort (while also forcing the smoother to have positive values):

But I would like to have smoothed confidence bands from the GAM. How do I add those?

Not the answer

  1. Remove fill = NA. Nope. Those confidence bands would be infinitely small because the prediction by tenure is exactly the same within a cohort.
  2. Add a call to geom_ribbon(aes(x = tenure, ymin = low, ymax = high)). Nope. That gives me a super-wiggly, non-smoothed confidence band.
  3. Use package:ggvis! No package:ggvis answers, please, unless there is no way to do this in ggplot2. My current plotting framework is ggplot2, and I'm sticking with it for now unless I must switch in order to do this plot.
0 投票する
2 に答える
4943 参照

r - Rの各変数のGAM {mgcv}の適合値を抽出する方法は?

モデル内のすべての変数の予測値 (標準化されていない実際の値) を追加する方法を探しています

> model<-gam(LN_Brutto~s(agecont,by=Sex)+factor(Sex)+te(Month,Age)+s(Month,by=Sex), data=bears)

これは私のモデルの要約です:

予測値は、次のコードによって提供されます。

結果は次のようになります。

しかし、これらは標準化された予測値であり、実際の値ではないと思います (実際の値には負の値があってはなりません!?)。

実際の値を取得するために、コードで何を変更する必要があるかを誰かが知っていますか? 何か案が?ありがとうございました!

0 投票する
1 に答える
411 参照

r - mgcv で因子平滑相互作用をプロットする際に、いくつかの引数が意図したとおりに機能しない

パッケージs(... bs = "fs")内で構築された因子平滑相互作用のプロットを作成しました。mgcvただし、xlimとのmain引数 (および他のいくつかの引数) はplot.gam()適切に機能していないように見えますが、他の種類のスムーズをプロットするための同じ引数が機能します。

これが例です。

更新: 私が抱えている問題をよりよく反映するように例を修正しました (2014 年 12 月 2 日)。

上記の用語に対応するプロットを生成する次のコードは、s(x)意図したとおりに x 軸を制限し、タイトルを配置します。

ただし、上記の用語に対応するプロットを生成する次のコードはs(x, f, bs = "fs")、x 軸を制限したり、タイトルを生成したりしません。

mgcv::plot.gam()引数 (の一部) をmgcv:::plot.fs.interaction()または場合によっては渡すことができないと思われますmgcv:::plot.mgcv.smooth()が、それが発生する理由と修正方法を理解できていません。助けていただければ幸いです。

0 投票する
1 に答える
1120 参照

r - キャレットを使用したポアソン GAM モデルの検証

R の「キャレット」パッケージを使用して、一般化加法モデル (GAM) の交差検証を実行しようとしています。これを GLM で機能させることができます。 GAM を使用していますが、動作させることができません。以下を参照してください。

最後の行を実行するときにスローされる重大な警告は次のとおりです。

どうやら、glm() と同じ方法でファミリ引数が gam() に渡されていないようです。ウェブを徹底的に検索した後、これの実際の例は見つかりませんでした。どんな助けでも大歓迎です!

ニック

0 投票する
1 に答える
1032 参照

r - R の mgcv パッケージのマルコフ確率場に関する混乱

空間分析を実装するために、マニュアルがここにあるRのmgcvパッケージの例で、単純なマルコフランダムフィールドスムーザーを試しました:

https://stat.ethz.ch/R-manual/R-devel/library/mgcv/html/smooth.construct.mrf.smooth.spec.html

これは私が試した例です:

しかし、b$coefficients で推定された係数を見てみると、マルコフ確率場スムーザーから 48 の推定値があります。

ただし、地区形状リストには 49 のエリア (0 ~ 48) が表示されます。データを試したところ、同じ状況が発生しました。これは、28 の領域を持つデータが、マルコフ確率場平滑化から 27 の推定値しか得られなかったためです。

私の理解では、空間関数として使用されるマルコフ確率場は、構造化されたランダム効果と見なすことができます。ただし、R の mgcv パッケージのマルコフ確率場スムーザーは、最初の領域を参照レベルとして自動的に設定するようです。空間的自己相関を考慮した固定効果のようなものなのだろうか?

もしそうなら、拡張された問題は、そのような出力をどのように説明するかです? 空間推定が各エリアと参照エリアの違いのように説明できるのは非常に奇妙に感じますが、この解釈はあまり意味がありません。

Rのランダム効果のようなマルコフランダムフィールドスムーザーを適合させることができるかどうかを考えています。ありがとう!

0 投票する
1 に答える
250 参照

r - 推定.gam関数へのmgcvアクセス

Rライブラリを使用していますmgcv

edf1gam 関数は値を持つオブジェクトを返します

この値がどのように計算されるかを理解する必要があるため、gam()関数のコードを読んでいます。

内部 gam()の結果は別の関数によって取得されます

estimate.gam()問題は、関数にアクセスできないことです

どうすればこれを解決できますか?

0 投票する
1 に答える
94 参照

r - データフレーム全体に適用された複数の GAM からモデルの信頼性を抽出する

一般加法モデルをデータフレーム全体に繰り返し適用することができたので、sp_a は応答変数です...

これにより、応答変数と各説明変数の間に GAM が繰り返し作成されます。ただし、各モデルから p 値または s.pv を抽出する方法。誰もこれを行う方法を知っていますか? また、このように AIC スコアでランク付けするのもよいでしょう...

ただし、代わりに元の「Gam」出力からこれを選択します。事前に助けてくれてありがとう。