問題タブ [python-xarray]

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

python - Xarray の `xr.Dataset` から値 (ポイント、ベクトル、配列など) を取得しますか? (パイソン3)

xr.Datasetオブジェクトから実際にデータを引き出す方法がわかりません。個々の値にアクセスする方法がわかりません。DataArray の場合と同じように、Dataset から値 (ポイント値、ベクトル、配列など) を取得するにはどうすればよいですか?

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

python - カラースケールラベルをmatplotlib/xarrayの色付きフィールドの中央に移動するには?

次のように作成された離散値 (= カテゴリ/因子) を持つヒートマップがあります。

ヒートマップ

カラースケール/凡例の数字をそれぞれのフィールドの中央に移動したいと思います。私 (および同僚) は、特にヒートマップ自体の x 軸の目盛りがフィールドの真ん中にあることを考えると、フィールドの交点での位置が少し誤解を招くと感じています。

カラー スケールでこれらの値をフィールドの中央まで移動するにはどうすればよいですか (そして、データ セットの値ではない 10 を切り捨てます)。

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

python - xarray データセットを netcdf またはデータフレームに書き込むセグメンテーション違反

複数の grib2 ファイルから作成された xarray データセットを操作すると、セグメンテーション エラーが発生します。この障害は、netcdf への書き込み時とデータフレームへの書き込み時に発生します。何がうまくいかないかについての提案は大歓迎です。

ファイルの例 ( http://dd.weather.gc.ca/model_hrdps/west/grib2/00/000/から) 'CMC_hrdps_west_RH_TGL_2_ps2.5km_2016072800_P015-00.grib2',...

netcdf への書き出し

セグメンテーション違反 (コアダンプ)

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

python-2.7 - Basemap を使用した 2 つの xarray データセット間の補間

緯度/経度のグリッド解像度が異なる 2 つの異なる xarray データセットがあります。低解像度の 1 つの xarray を、高解像度の 1 つの xarray と同じ解像度に再グリッド化したいと考えています。いくつかの例 (例: http://earthpy.org/interpolation_between_grids_with_basemap.html ) を見つけましたが、うまくいきません。テスト用に作成した一例を次に示します。

次のエラーが表示されます。

ValueError: xout と yout は同じ形状でなければなりません!

スクリーンショット: スクリーンショットを見る

basemap.interp() は xout と yout が同じ形状である必要がありますか? では、var2 は正方形である必要がありますか? これは、私のデータセットにはほとんど当てはまりません! var1 を var2 と同じ解像度に再グリッドするにはどうすればよいですか?

注: 再グリッディング後、var2 に関連するいくつかの条件を考慮して、var1 をサブサンプリングしたいと考えています。例えば:

そのため、補間中のグリッド ポイントの損失を最小限に抑えたいと考えています。

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

python - Python Xarray で DataArray をデータセットに追加

非常に単純な質問ですが、オンラインで答えを見つけることができません。があり、Datasetそれに名前付きを追加したいだけですDataArray。のようなものdataset.add({"new_array": new_data_array})mergeupdateとについては知ってconcatenateいますが、それは 2 つ以上のmergeをマージするためのものであり、2 つ以上のを連結して別の を形成するためのものであり、まだ完全には理解していません。試しましたが、次のエラーが表示されます。DatasetconcatenateDataArrayDataArrayupdatedataset.update({"new_array": new_data_array})

私も試しましdataset["new_array"] = new_data_arrayたが、同じエラーが発生します。

アップデート

問題は、座標の一部に重複した値があることであることがわかりましたが、それについては知りませんでした。座標はインデックスとして使用されるため、共有座標を結合しようとすると Xarray は (当然のことながら) 混乱します。以下は、動作する例です。

出力:

上記のコードはnamesインデックスとして使用します。コードを少し変更するnamesと、たとえば が重複し、 がnames = ["joaquin", "manolo", "joaquin"]得られますInvalidIndexError

コード:

出力:

したがって、Xarray 自体のバグではありません。それにもかかわらず、私はこのバグを見つけるのに何時間も費やしたので、エラー メッセージがもっと有益であるといいのにと思います。Xarray の協力者がこれをすぐに修正してくれることを願っています。(マージを試みる前に、座標の一意性チェックを入れてください。)

いずれにせよ、以下の私の回答で提供される方法は引き続き機能します。

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

python - `xarray.Dataset.groupby()` のバグの可能性?

Mac OS X El Capitan 10.11.6 で Xarray バージョン 0.8.0、Python 3.5.1 を使用しています。

次のコードは期待どおりに機能します。

出力:

id_data_arrayただし、すべての要素を区別するために、ほんの少しだけ変更すると、エラーが発生します。

コード:

出力:

これが望ましい動作である場合、非常に奇妙になるため、これはバグのように思えます。DataArray確かに、グループ化している のすべての要素が異なる場合を含める必要がありますか?

アップデート

Xarray をアンインストールして再インストールしました。新しい Xarray はバージョン 0.8.1 で、問題なく動作するようです。したがって、Xarray 0.8.0 のバグである可能性があります。

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

python - xarray でデータをフィルタリングする簡潔な方法

xarray 配列の値に非常に単純な「一致ステートメント」を適用する必要があります。

  1. 値 > 0 の場合は 2 にします
  2. 値 == 0 の場合、0 にする
  3. 値が の場合NaN、makeNaN

これが私の現在の解決策です。NaN2D インデックスの代わりにs, .fillna, & 型強制を使用しています。

これにより、次のように変更されます。

...これに:

パンダにいる間はdf[df>0] = 2十分でしょう。確かに私は歩行者のことをやっていますが、もっと簡潔な方法はありますか?