問題タブ [gstat]

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

r - Rでgstatを使用してモデルをセミバリオグラムに適合させる方法は?

csv ファイルには、3 月 1 日午後 12 時の大気中の PM10 濃度データが含まれています。ダウンロードしてください。Rでgstatパッケージを使用してセミバリオグラムを描画したい.Rでこれらのコードを記述しようとしましたが、これらのデータではモデルに適合しません。

実は私はRと統計の初心者です。だから、私はバリオグラムについてさえ無知です。私はいくつかのクエリを持っています:

a) データをセミバリオグラムとしてプロットすると、通常のセミバリオグラムとは異なるように見えます! なぜこれが起こっているのですか?変換など、データに対して他に何かする必要がありますか?

b) このデータでモデルをどのように適合させることができますか? 「Sph」や「Exp」など色々試してみましたが、どう見ても直線的ですね!なぜ?

c)関数で使用するシル、レンジ、ナゲットの初期値をどのように理解できvgm()ますか?

d) モデルがデータに適切に適合することをどのように理解できますか?

e) クリギングを使用するには、どのようなセミバリオグラムをプロットすればよいですか? 無指向性セミバリオグラムのみ?または、方向セミバリオグラムをプロットする必要がありますか?

f) セミバリオグラムをどのように解釈できますか? セミバリオグラムのデータについて実際に理解できることは何ですか?

前もって感謝します。

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

r - 問題はRでLON / LATデータを投影しています

韓国のソウル(首都)の空気中のPM10濃度を含むデータフレームがあります。どうぞ、ご覧ください。このデータセットからセミバリオグラムをプロットしたいと思います。ここの LAT/LON データは度数なので、このデータを投影しています。私はこの方法でデータを投影しました:

投影した後、以下のようにseoul311を取得しました

Q1: 投影後、LON/LAT の値が前のデータ フレームとほぼ同じ値を示していることがわかりました。私の質問は、このproj4string(seoul311) = "+proj=longlat +datum=WGS84"コマンドの実際の機能は何ですか。ここで、LON/LAT(度) は km/m などに変換されますか?

以下のようなrgdalパッケージを使用して別のコードを記述しようとしました:

投影した後、以下のようにseoul3112を取得しました

Q2. ここで、LON/LAT 値が大きな値に変換されていることがわかります。これらの値の意味は何ですか? m/km か何か?上記のコードで北は何を意味しますか? 北半球?

Q3. 前述したように、韓国のソウル (UTM ゾーン 52) でセミバリグラムをプロットしたいと考えています。では、どの射影規則を使用すればよいでしょうか? UTM ゾーンを考慮する必要がありますか? UTM ゾーンはいつ検討する必要がありますか?

データの投影について多くの混乱があります。私の3つの質問に詳しく答えていただけますか?

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

r - R: 不適切なバリオグラム フィッティング、不適切なクリギング結果

ジャカルタ湾でクリギングを試みます。適切な座標と属性 (pH、塩分など) を持つ一連の測定ポイントがあります。

クリギングを行うには、まずバリオグラムのモデルを見つける必要があります。「バリオグラム」関数を使用すると、出力は完全ではありませんが、問題はありませんが、バリオグラムを当てはめようとすると警告メッセージが表示されます。 Sph", 0.1, 0.01)) : 警告: バリオグラム フィットに特異なモデルがあり、特異なモデルがあります。

ここでは、バリオグラム計算に関連する特異モデルについて読みました。改善するために何かできることはありますか?

自分のバリオグラムをより適切に適合させるにはどうすればよいですか? 測定点の周りに小さな円しか表示されないのはなぜですか? 予測値を含む完全なマップが必要です。

さらに柔軟性の低い「automap」ライブラリも試しましたが、良い結果が得られませんでした。