問題タブ [glm]
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.
r - Rで多くのGLMを高速化
まず、長い投稿について申し訳ありません。良い答えを得るために文脈を与える方が良いと考えました(私は願っています!)。少し前に、データフレーム内の変数のすべてのペアワイズ相互作用を取得するR関数を作成しました。これは当時は問題なく機能していましたが、今では同僚がはるかに大きなデータセットでこれを実行することを望んでいます。彼らは最終的にいくつの変数を持つかはわかりませんが、およそ2,500〜3,000を推測しています。以下の私の関数はこれには遅すぎます(100変数の場合は4分)。この投稿の下部に、さまざまな数の変数と相互作用の総数のタイミングをいくつか含めました。関数の100個の変数の実行でRprof()を呼び出した結果があるので、誰かがそれを見てみたい場合は私に知らせてください。必要以上に長くしたくありません。
私が知りたいのは、この機能を高速化するために私にできることがあるかどうかです。glm.fitに直接アクセスしてみましたが、それが有用であるためには、計画行列の計算や、率直に言って理解できない他のすべてのものが、各モデルで同じである必要があります。 、これは私の分析には当てはまりませんが、おそらく私はこれについて間違っています。
これをより速く実行する方法についてのアイデアは大歓迎です。最終的に並列化を使用して分析を実行することを計画していますが、アクセスできるCPUの数はわかりませんが、8を超えることはないと思います。
よろしくお願いします、
CheersDavy。
次の表は、関数を通過する変数の数を増やした場合のsystem.timeの結果です。nは数であり、Intsは、その変数の数によって与えられるペアワイズ相互作用の数です。
タイミングやRprof()の結果を確認したい場合に備えて、データフレームを再現するためのコード。マシンが超高速であるか、約15〜20分待つ準備ができていない限り、これを実行しないでください。
r - glm() 内で splines パッケージの ns() 関数を使用する
スプラインns()
パッケージの関数をポアソン GLM と共に使用して、健康上の結果 ( ) に対する粒子状物質濃度 ( )の有意性をテストしようとしています。pm.lag0
Freq
これらのエラーが返されます:
それは有効な使用法ではありませns()
んか? 誰かがこのエラー メッセージを解読するのを手伝ってくれますか? R が提供するスプラインのドキュメントは、このエラー ( ) と一致していないようです?ns
。
r - R で GLM 適合のプロファイル逸脱度をプロットする
R の関数を使用してフィッティングされたパラメーター推定値のプロファイル逸脱度をプロットできるようにしたいと考えていますglm()
。プロファイル逸脱度は、他のすべてのパラメーターを推定した後の、問題のパラメーター推定値のさまざまな値の逸脱度関数です。二次逸脱関数の仮定を確認するために、適合パラメータの周りのいくつかの値の逸脱をプロットする必要があります。
私のモデルは、犯罪者の再有罪判決を予測しています。式の形式は次の
reconv ~ [other variables] + sex
とおりreconv
ですsex
。性別=女性 (性別=男性は参考レベル) について推定されたパラメーターのプロファイル逸脱度をプロットしたいと思います。
関数はglm()
パラメーターを -0.22 と推定し、標準誤差は 0.12 でした。
[見つけることができる答えがなかったので、この質問をしていますが、私はそれを解決し、他の人に役立つ解決策を投稿したかった. もちろん、追加のヘルプは大歓迎です。:-)]
sas - SASで一元配置RM ANOVAの後にTukeyのHSD事後検定を行う方法は?
次の行を実行します。
しかし、MEANS
ステートメントはクラス変数で機能します(「エラー:この効果ではクラス変数のみが許可されています。」 SASは言います)。次に、応答 (試行) のみを定義しました: MODEL AA BB CC DD EE = / NOUNI;
. 誰でも私を助けることができますか?
PS
(基本的に私のデザインはCrossValidatedで説明されています。)
sas - Proc GLM ODS 番号の形式
SAS の Proc GLM で ODS からのパラメーター推定値をどのようにフォーマットしますか? 私のコードは
ベータを少なくとも有効桁数 4 桁まで書き出したいのですが、beta_x1 が int で、beta_x2 が絶対値で 1 より小さい場合、出力は beta_x2 を最も近い桁に丸めます。助言がありますか?前もって感謝します。
r - R : R 関数内で引数を glm に渡す
R のスコーピングの問題に慣れようとしています。関数glm()
内で関数を呼び出したいのですが、どうやらスコーピングの理由で、関数assign()
またはeval()
.
ここに簡略化されたバージョンがあります:
今、データセットで関数 ao() を使用したい
これは機能しませんが、次のように機能します。
誰が何をすべきか知っていますか?
どんな助けでも大歓迎です!!!
ところで、これが私が使用しているデータセットで私の問題を再現する方法です
quaternions - クォータニオンはベクトルを反転します
glm :: quaternionsを使用して、特定の軸を中心にベクトルを回転させています。ただし、ベクトルは呼び出されるたびに軸を反転します。
オブジェクトを横軸を中心に回転させるコードは次のとおりです。
このメソッドを呼び出すたびに、上向きのベクトルが軸を中心に回転しますが、反転します。これを回避するには、次を使用します。
しかし、これは原因を見つけるのではなく、症状を治療するようなものです。たぶん、このあたりの誰かが、クォータニオンがここで何をしているのかを理解するのを手伝ってくれるでしょう。
python - rpy2 使用時の glm 計算が遅い
Rのglmパッケージを使ってロジスティック回帰パラメータを計算したいです。私はpythonで作業しており、そのためにrpy2を使用しています。何らかの理由で、RI を使用して glm 関数を実行すると、rpy2 を使用するよりもはるかに高速な結果が得られます。rpy2 を使用した計算が非常に遅い理由を知っていますか? R - V2.13.1 および rpy2 - V2.0.8 を使用しています。使用しているコードは次のとおりです。
r - Rのglmnetの係数名の解釈
次のコードを使用して、glmnet を使用して、5 つの機能のセットに基づいて確率を予測しています。別の(Rではない)プログラムで使用する必要があるため、実際の式が必要です。
結果の係数の名前には 5 つの位置があり (これは各機能の 1 つだと思います)、それぞれの位置は 0 から 3 の間の数値です (これは多項式の次数だと思います)。しかし、式を正確に再構築する方法についてはまだ混乱しています。
たとえば、次のとおりです。
機能を A、B、C、D、E と呼びましょう。これは式をどのように解釈するべきですか?
それが正しくない場合、どのように解釈すればよいですか?
次の質問と回答を見ましたが、これらのタイプの係数名には対応していませんでした。
よろしくお願いします。
r - glmultiを使用して準ファミリをフィッティングしますか?
glmulti
パッケージの関数を使用してglmulti
、ポアソン誤差分布データに最適な glm モデルを取得しました。問題ありません。最適なモデルを取得したら、カイ 2 乗検定を使用して p 値を取得し、モデルに入力された各変数の統計を検定しました。私が直面している唯一の問題は、データが過度に分散していることと、Zuur book と Crawley の両方が、準家族関数を使用して過分散を修正することを提案していることです。これ自体は、glmulti 関数が準関数への適合を許可しないことを除けば、問題ではありません。
私が持っている質問は、ポアソン誤差分布で glmulti を使用して最適なモデルを取得し、最適なモデル出力を準関数に適合させることが間違った方法であるかどうか、および誰かが提供できる他の提案があるかどうかです。
また、正規分布データに対しても glmulti を実行しました (ファミリをガウスとして指定し、リンクを ID として指定)、これは機能しましたが、主要なルールに違反している場合はお知らせください。