問題タブ [nls]

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 投票する
3 に答える
1975 参照

r - nls-fitがゼロを下回るのを防ぐ

関数をRに適合させようとしているので、nls()を使用します。近似関数がゼロを下回るのを防ぐ方法はありますか?

簡単な回避策は、近似後にターゲット関数のパラメーターを上げることb0ですが、正のビーイングの制約を伴う実際の近似がより良い結果につながることを期待しているため、これは実際には私が望むものではありません。

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

r - 単一変数の任意の関数のパラメーターをデータに適合させることはできますか?

私はRで働いています。ある変数(X)を別の変数(Y)に関連付ける関数(F)があります。(F)には、Y == F(X)== G(X、A、B、C)のように、3つの可変パラメーター(A、B、C)があります。この関数を、最適な(A、B、C)を見つけることによってN(X、Y)ペアを与えるデータセットに適合させたいと思います。

(X)と(Y)の関係は、多項式でも、ある種の確率分布でもありません。上で定義した任意の(F)に対してこれを行う方法があるかどうか知りたいです。

0 投票する
2 に答える
210 参照

regex - Oracle の等価クラスが正規表現で機能しない

次の Oracle 同等クラスの正規表現:

返されるはずです:

代わりに次を返します。

私はまた、その前に次のものを入れてみました:

私がどこで間違っているのか、誰にもアイデアがありますか?

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

r - 最適なnlsライン - ラインのプロットを強制する方法は?

を使用してプロットに最適な行を追加する基本的な関数を作成しようとしていますnls。に渡された数式によってデータが正確に定義されていない限り、これはうまく機能しnlsます。私は問題を認識しており、これはここで報告されているように文書化された動作であることを認識しています。

私の質問は、モデルによって正確に記述されているデータに関係なく、どうすればこれを回避し、最適な線を強制的にプロットできるかということです. データの一致を正確に検出し、完全に適合する曲線をプロットする方法はありますか? 私の現在の危険な解決策は次のとおりです。

次のエラーで失敗します。

私が適用する簡単な修正jitterはデータにわずかですが、これは少し破壊的でハックのようです。

より良い方法はありますか?

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

r - SSlogis()およびpredict()でnls()を使用したRの不明なエラーメッセージ

nls()を使用して、ロジスティックモデル(自己開始; SSlogis)を鳥の複数の個体群のデータに適合させています。私の目標は、期待される関数をデータに適合させ(各データセットの一部のみを使用)、期待値に関する分散の測定値をグラフに表示することです。次に、観測された関数を(各母集団のデータセット全体を使用して)近似およびプロットして、観測されたダイナミクスが期待値の分散内にあるかどうかを判断します。これを達成するために現在書かれている私のコードは次のとおりです。

ここで(「collapse.data」ファイルから):

そのコードは正常に機能し、次のような図を生成します。

アマサギ崩壊分析

ただし、コードの最終行から「log()」を削除して、次のように記述した場合は、次のようになります。

線はプロットされず、次のエラーが発生します。

nls.controlsをいじって、「minFactor」の値を変更しても、変更することはできません。また、一部の母集団のmod(##。mod部分)を定義する最初の行の後にこのエラーメッセージが表示されます。

また、一部の母集団では、これを報告するコードの最後の行の後にエラーメッセージが表示されます。

データを自然対数変換することの合理化は考えられません。predict()とSSlogis()を許可するようにデータを変更した(この場合は任意にログに記録した)と仮定します。正しく機能するように機能しますが、理由はわかりません。私はそのような問題に対するどのフォーラムでも適切な答えを見つけることができませんでした。どんな助けでも大歓迎です。

*更新:Roland(下記)が推奨するようにnlsLM関数を実装しようとしました。それは確かに、紛らわしいlog()の使用でコードの部分をクリーンアップします:

ただし、他の母集団の場合、最初のモデル仕様で上記と同じエラーメッセージが表示されます。

切り替え:

どこ

このスイッチはエラーメッセージを回避しますが、nlsLMは関数を評価しますが、勾配は評価しません。勾配の評価がないと、se.fitコードを使用できないため、プロットの分散の推定値を取得できません。

0 投票する
3 に答える
3652 参照

r - 二項演算子を使用した非線形最小二乗近似 nls の非数値引数に関する問題

R を使い始めたばかりで、式 y=A(1-exp(-bL))+R に対する非線形最小二乗フィット nls(...) を取得したいと考えています。関数 g を次のように定義します

によってnlsを実行したい

そして、次のエラーメッセージで終了します。

別の初心者による愚かな基本的な間違いだと思いますが、誰かが私を助けてくれると非常にうれしいです.

次の質問は、適合曲線をグラフに実装できるかどうかです

時間を割いて読んでくれて、できれば私の質問に答えてくれてありがとう!

詳細情報: x 値 (Light.intensity) と y 値 (例: VI.20.29) の表があります。

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

nls - 曲線の nls パラメータの設定

私は R の比較的初心者であり、数学者ではなく遺伝学者です。複数のデータポイントのペアのセットが多数あります。それらをプロットすると、ほとんどのデータ ポイントがゼロ マークの近くで終わる平坦な S 曲線が得られます。少数のデータ ポイントは遠く離れて飛んでおり、ほぼ 2 つの J 曲線 (1 つは下、もう 1 つは上) を作成しています。データが急激に上向きまたは下向きになる変曲点を見つける必要があります。これは私の数学の問題かもしれませんが、曲線を滑らかにして線に合わせて方程式を得ることができれば、曲線の2次導関数を取り、2次導関数が変化する変曲点を決定できるように思えますサイン。私はそれをExcelで試し、曲線を使用して近似フィットを得て開始式を取得しましたが、データには少し「揺れ」があります そのため、すべてを手動で行いたい場合でも、1 つの変曲点を特定することはできません (私はしません)。これら 2 つの変曲点を見つけなければならない何百ものデータ セットのそれぞれは、ほぼ同じ曲線を生成しますが、わずかに異なる変曲点を持ち、これらの変曲点を正確に決定することは、問題にとって絶対に重要です。したがって、それを行う必要がある方程式で一度適切に設定できれば。簡単にするために、それらを正の曲線と負の曲線に分けて、それぞれを別々に行いたいと思います。(たぶん、それを悪い考えにするs曲線の簡単な式がいくつかありますか?) これら 2 つの変曲点を見つけなければならない何百ものデータ セットのそれぞれは、ほぼ同じ曲線を生成しますが、わずかに異なる変曲点を持ち、これらの変曲点を正確に決定することは、問題にとって絶対に重要です。したがって、それを行う必要がある方程式で一度適切に設定できれば。簡単にするために、それらを正の曲線と負の曲線に分けて、それぞれを別々に行いたいと思います。(たぶん、それを悪い考えにするs曲線の簡単な式がいくつかありますか?) これら 2 つの変曲点を見つけなければならない何百ものデータ セットのそれぞれは、ほぼ同じ曲線を生成しますが、わずかに異なる変曲点を持ち、これらの変曲点を正確に決定することは、問題にとって絶対に重要です。したがって、それを行う必要がある方程式で一度適切に設定できれば。簡単にするために、それらを正の曲線と負の曲線に分けて、それぞれを別々に行いたいと思います。(たぶん、それを悪い考えにするs曲線の簡単な式がいくつかありますか?)

マニュアルを読んでみましたが、数学が苦手なせいかわかりにくいです。また、研究できる同様の例を見つけることができませんでした。

これは私のデータセットの先頭です: xy [1,] 1 0.00000000 [2,] 2 0.00062360 [3,] 3 0.00079720 [4,] 4 0.00085100 [5,] 5 0.00129020

(X は 1 から多くのデータ ポイントに番号を付けているだけであり、X の数は個々のセットによって少し異なります。)

これは、カーブフィッティング部分を解決するために得た限りです。

pos_curve1 <- nls(curve_fitting ~ (scal*x^scal),data = cbind.data.frame(curve_fitting), + start = list(x = 0, scal = -0.01)) numericDeriv(form[[3L] のエラー], names(ind), env) : モデルの評価時に欠損値または無限大が生成されました。さらに: 警告メッセージ: 1: in min(x) : min に欠損していない引数はありません。Inf 2 を返します: in max(x) : max に欠落していない引数はありません。-Inf を返す

私は数学を難しい方法でやっているだけですか?私はnlsで何が間違っていますか? どんな助けでも大歓迎です。

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

r - R の nls() 関数

ハイブリッド ニューケインジアン フィリップス曲線は次のとおりです。

モデル

いくつかの操作の後、次の推定可能なモデルを取得します。

新しいモデル

ここで、πはインフレ率、xは産出ギャップ (= Hodrick-Prescott フィルターを使用した GDP の循環成分) の尺度です。モデルの説明変数πxは観測可能です。

非線形最小二乗法を使用してこのモデルを推定する必要があります。ただし、このモデルは線形に見えます。nls()また、 Rで関数を使用しようとしても失敗しました。

また、非線形回帰に関する私の研究は、ロジスティック人口増加につながりましたが、特に開始値の導出に関しては、学んだことをこの演習に関連付ける方法を見つけることができません.

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

r - パラメータの長いリストを R の `nls` 関数に渡す方法

nls関数は通常、次のように機能します。

私が使用しているモデルには多くのパラメーターがあるか、パラメーターリストに何が含まれるかが事前にわからないため、次のようなものが必要です

nls多くの個別のパラメーターの代わりに、式でパラメーター ベクトル引数を受け入れることができるように、関数を変更する方法を知っている人はいますか?

0 投票する
0 に答える
894 参照

windows - 指定されたLANGIDから言語名の文字列を適切に照会する方法は?

入力時に、言語 ID があります。 出力では、言語の完全なローカライズされた名前が期待されます。

文字列を入力するために使用GetLocaleInfo(..., LOCALE_SLANGUAGE, ... )します。0入力を受け取り、GetLocaleInfoニュートラルな言語を示すのではなく、ユーザーのデフォルト言語で文字列を埋めるまで、すべてが正常に機能しました(予想)。私の知る限り、に等しい特別な LOCALE_XXX_DEFAULT 定数はありません0

テストケースは次のとおりです。

  • ここで何が間違っていますか?
  • 言語名を正しく取得するには?