問題タブ [automap]

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 に答える
448 参照

r - R autoKrige ループ (パッケージ automap)

補間したい毎日の観測データフレームがあります。automap を使用して毎日のバリオグラムを作成し、新しいデータに適用します。ループを実行して、結果を新しいデータフレームに入れようとしました。残念ながら、結果のデータ フレームには、最後の予測日しか含まれていません。

結果は次のようになります。最後の列だけでなく、すべての列に値が入力されている必要があります。

次のような警告も表示されます。

行ごとに手動で autoKrige を実行すると、すべて正常に動作します。通常どおりループが機能していないようです。これは automap パッケージの問題ですか?

どうもありがとう!

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

python - Python の automap 双方向関係

Automap は双方向の関係を生成できますが、ドキュメントは曖昧で、具体的な例が示されていません。誰かが経験やサンプルコードを共有できますか? ありがとう。

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

r - autoKrige の結果を境界ポリゴンでカット/クロップ/マスクする方法は?

20x20m セル サイズの土壌サンプル データに autoKrige (自動マップ ライブラリ) を実装するモジュールの開発に忙殺されています。クリギングが完了したら、クリギングの結果をフィールドの境界でトリミング/マスクしたいと思います。

クロッピング/マスキングの問題は、(20x20 セルのため) フィールドの境界が「ステップ」効果を与えることです。私が探しているのは、滑らかな境界 (セルを切り開く) です。

以下は、上記で説明した 2 つのシナリオを生成するコードです。

現在、上記のグリッド (boundary.grid.stepped) は、autoKrige を呼び出すときに「new_data」パラメーターとして渡されます。

どちらがより良いアプローチであり、それを実装するにはどうすればよいですか:

1) ターゲットグリッドを事前に準備し、それを「new_data」として使用するか、

2) バウンディング ボックス グリッドにクリギングを実行し、後でカット/クロップ/マスクしますか?

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

r - Rで効率的に単一のデータセットから複数のセミバリオグラムをプロットする方法は?

seoul1to7 という名前のデータフレームには、2012 年 3 月 1 日から 3 月 7 日までの 1 時間ごとの PM10 濃度データが含まれています。ダウンロードしてください。このデータセットでは、時間は yyyymmddhr 形式です。たとえば、2012030101 は 2012 年 3 月 1 日午前 1 時を意味します。

データは次のようになります。

私の最終的な目標は、1 時間ごとにセミバリオグラムをプロットすることです。たとえば、2012 年 3 月 1 日午前 1 時 (2012030101) の場合、107 個の PM10 データがあります。そして、2012030101 から 2012030723 (合計 7*24 セミバリオグラム) のセミバリオグラムをプロットしたいと思います。Rでいくつかのコードを書きました:

最初に、目的の (7*24) データフレームを関数で作成しようとしてからsubset()、各データフレームのセミバリオグラムをプロットしたいと思いました。たとえば、seoul311次のコードで (2012030101 の)セミバリオグラムをプロットしました。

しかし、私のコードが非常に非効率的であることは理解しています! subset(seoul1to7, time==2012030101)このコードを (7*24) 回書いています。次に、セミバリオグラムをプロットするためのコードを (7*24) 倍します。これは非常に不適切な方法だと思います。

seoul1to7では、これらの (7*24) セミバリオグラムをデータセットから(ループまたはその他の関数を使用して) 非常に効率的にプロットするにはどうすればよいでしょうか? さらに情報が必要な場合は、お知らせください。

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

r - loop/lapply 関数を使用して異なるタイトルで複数のバリオグラム プロットをプロットする方法は?

私は、3 月 1 日から 3 月 7 日までの 1 時間ごとの PM10 濃度を含む csv ファイルを持っています。こちらからダウンロードしてください。automap パッケージにより、ループ内のすべてのバリオグラム (合計 161) をプロットしました。

ここでは、etc で個々のプロットを取得できますvars[[1]],vars[[2]]...が、すべてのバリオグラムには同じタイトルが付いています。ここで、ループ内の異なるタイトルのすべてのバリオグラム画像をプロットしたいと思います。バリオグラムのタイトルを「2012-03-01 1.00 のバリオグラム」、「2012-03-01 2.00 のバリオグラム」などにします。

hours「2012-03-01 01:00」、「2012-03-01 02:00」、「2012-03-01 03:00」など、目的の別のタイトルを変数に保持します。

ループを使用して、タイトルが異なるすべてのバリオグラム (合計 161) をプロットするにはどうすればよいですか?

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

r - autoKrige() を使用した R ユニバーサル クリギング

automap パッケージの autoKrige() 関数を使用して、ユニバーサル クリギングを簡単に適用しようとしています。不規則な間隔の測定グリッドがあり、それらの間を細かい空間スケールで補間したいと考えています。コード例:

これにより、次のエラーが発生します。

new_data の行数を元のデータと同じにしようとしましたが、new_data の座標を元のデータとまったく同じにしようとしましたが、それでもこのエラーが発生します。私は地球統計学の手法に慣れていないので、基本的な間違いを犯していたら申し訳ありません。誰が私が間違っているのかアドバイスできますか? ありがとう。

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

gstat - Automap パッケージ: 負の値とバリオグラム フィッティング

自動化されたバリオグラム モデリングに automap パッケージを 2 日前に使い始めて、いじってみました (手動で行うのは面倒で、あまり多くの利点はありません... ただし、automap が Matérn 関数を本当に気に入っているように見えるのは奇妙だと思います)バリオグラムのモデリング用)。私の頭に浮かんだのは、データセットに負の値が存在することでしたが、それらはこのパッケージによって生成されたマップには表示されませんでした。

これは私が貼り合わせたばかりの図です。1 は、autoFitVariogram と autoKrige を使用した後の出力です。負の値はないようです。グラフィック出力が気に入らなかったので、autoFitVariogram (automap から) (Nr. 2) からのバリオグラムを使用する gstat で通常のクリギングを実行し、負の降水量の領域を明確に示します。autoKrige から生成されたマップを QGIS にエクスポートして再確認したところ、多くの負の値 (Nr. 3; 黒く塗りつぶされた領域) がありました。

ここに画像の説明を入力

だから私の質問:

1.) autoKrige によって生成されるクリギング予測マップは、「if var.pred < 0 then 0」などのスキームに従うマップを生成するようです。これはそのようなマップを作成するのに役立つことがわかりますが、これは実際のデータでどのように意味があるのでしょうか? データセットをさらに分析するために使用したいのですが、負の降雨値が少し表示されます... 非現実的です。この「if var.pred < 0 then 0」スキームをデータにも適用することは、物理的に妥当である場合、数学的に適切でしょうか?

2.) automap パッケージの独自の引数として一般化最小二乗法 (GLS) を使用して、さらにバリオグラム パラメーターを決定できます。ただし、gstat ( fit.variogram.reml )からの REML フィットを使用したいと考えています。自分の REML 推定 (修正したバリオグラムも生成) に置き換えてみvariogram$var_modelましたが、autoKrige でクリギングを実行すると、元のバリオグラム モデルが再び使用されます。パッケージで提供されている以外の方法でモデルを適合させる方法はありますか? (autoKrige マニュアルには引数 'data_variogram' がありますが、これは別のことをしているようです)。

ありがとう!

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

r - R で gstat または automap パッケージを使用するとデータが重複する

R の gstat または automap パッケージを使用して、予測変数に基づいて動物が発生するデータを空間的に予測するために、通常のクリギングを使用しようとしています。多くの (100 以上の) 重複する座標点があり、それらのステーションがサンプリングされているため、それらを捨てることはできません。何年にもわたって何度も。通常のクリギングで以下のコードを実行するたびに、ポイントが重複しているために LDL エラーが発生します。データを捨てずにこの問題を解決する方法を知っている人はいますか? 重複を修正するはずのautomapパッケージのコードを試しましたが、うまくいきません。お手伝いありがとう!

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

r - R: automap パッケージの Autokrige.cv 関数は NaN を生成します

私はRにかなり慣れていないので、オランダのさまざまなステーションから収集された温度測定値を補間しようとしています。私は、約 2 週間の期間をカバーする 10 分ごとに測定を行う約 35 の観測所のデータを持っています。したがって、これを処理するループを作成するのが最善であると考えました。補間手法がどの程度うまく機能するかを確認するために、すべてのタイムスタンプに対して相互検証を行いたいと思います。

これを行うために、automap パッケージの Autokrige 関数を使用し、次に automap パッケージの compare.cv 関数を使用して、すべてのタイム スタンプの最も重要な統計の概要を取得しました。それに加えて、少なくとも 25 のステーションが測定値を登録した場合にのみ相互検証が行われるようにしました。

ただし、問題は、以下に説明する私のコードはほとんどの場合機能しますが、4 つのケースで次の警告が表示されることです。

すべての相互検証を含む合計リストに対して compare.cv コマンドを使用しようとすると、次のエラーが表示されます。

Autokrige 関数が相互検証で NaN を生成する原因と、さらに重要なことに、compare.cv 関数を使用できるように results.cv からそれらを削除する方法を知りたいですか?

ありがとう!

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

r - automap パッケージの autokrige を適切に使用できません (R は予測位置をうまく読み取ることができません)

R を使用して、イベリア半島から収集されたデータの補間周波数のマップを実行しようとしています。(このようなものhttps://gis.stackexchange.com/questions/147660/strange-spatial-interpolation-results-from-ordinary-kriging )

私の問題は、autokrige 関数の属性 new_data に何らかのエラーがあるため、プロットに補間データが表示されないことです。

https://cran.r-project.org/web/packages/automap/automap.pdf new_data: 予測位置を含む sp オブジェクト。new_data は、ポイント セット、グリッド、またはポリゴンにすることができます。NA を含めてはなりません。このオブジェクトが提供されない場合、デフォルトが計算されます。これは、input_data の凸包を取得し、その凸包に約 5000 個のグリッドセルを配置することによって行われます。

問題は、この new_data 属性を回避すると、クリギング値の適切なプロットが得られるため、R がポリゴンに変換されたマップをうまく読み取れないことだと思います。しかし、イベリア半島の形がよくわかりません。誰か助けてくれませんか?本当にありがたく思います

ここで私のデータを見ることができます: http://pastebin.com/QHjn4qjP

実際のコード: データ座標を UTM 投影に変換するため、エラー メッセージは表示されませんが、最後のプロットは補間されず、マップ全体が 1 つの単色で表示されます :(