日々のつれづれ

不惑をむかえ戸惑いを隠せない男性の独り言

TokyoR#107用に準備していたプレゼン

ToktoRでジオデータという話をきっかけに、rgdalのメンテナンス終了を知った訳ですが、 席に空きがでそうな雰囲気だったので、調べた経緯をプレゼンにしていた。

結局、枠が埋まったようで、良かった。

前回のことがあったので、私は無理に参加せず、プレゼンを記録として残すことにした。

GISデータの吐故納新

第 107 回 R 勉強会@東京 (#TokyoR)

bg left:38% 115%

きっかけ

  • ジオデータ特集と聞いて、GISデータを学びなおそうしたところ、rgdalのメンテナンス終了を知る
  • 一抹の寂しさをおぼえたので、リタイヤの経緯を整理しました

引用元

rgdalパッケージのメンテナンス終了

  • rgdalは空間データを扱うための基本パッケージの一つでした
  • GDAL$^\ast$をRで利用できるようにしていました
    • GDAL: Geospatial Data Abstraction Libraryの略
  • 多様な空間データ形式の読み書きや変換を実現していました
  • しかし、2023年10月にメンテナンス終了が決まりました

これには、rgdalが抱える課題が関係していました

rgdalが抱える課題

  • rgdalのメンテナが引退を発表しました
  • 設計が古く、可読性や保守性が低く、継承が困難と判断されました
  • sp パッケージを踏襲することが原因とされました
  • 特別なクラスやメソッドで空間データを表現していました
  • データの標準化が難しく、操作や可視化の統合も難しい状態でした
  • ベクターデータとラスターデータを統一的に扱えませんでした

近年は、新しい設計に注目が集まっています

新設計、シンプルフィーチャ

  • 国際的な規格に基づく標準化されたテーブル形式で空間データを 表現できます
  • ベクターデータとラスターデータを統一的に扱えます
  • SQLDBMS と互換性が高いデータ構造で空間データを扱えます
  • モダンなデータ操作や可視化機能に空間データを統合できます

新しい設計に基づくパッケージが登場しています

新しい設計、sfstarsterra

  • sfパッケージ
    • 空間ベクターデータ(点、線、面など)を扱います
    • tidyversedplyrと互換性があります
  • starsパッケージ
    • 空間時間配列(ラスターとベクターのデータキューブ)を扱います
    • NetCDFに対応し、気候や衛星などの多次元データを効率的に処理できます
  • terraパッケージ
    • 空間ラスターデータ(グリッドデータ)を扱います
    • rasterの後継であり、sfstarsと相互変換が可能で、ベクターとラスターの統合的な分析を実現します
名称 データタイプ 代替元 特徴
sf 空間ベクター
データ
sp - GDAL、GEOS、PROJを使い、読み書き、幾何学的操作、
 座標系変換を実現
- tidyversedplyrとの互換性
stars 空間時間配列 raster - GDAL、GEOS、PROJ、NetCDFを使い、読み書き、操作
 を実現
- 気候や衛星などの多次元データの効率的な処理
- sfterraと相互変換が可能、空間時間配列のデータ構造を
 提供
terra 空間ラスター
データ
raster - コードの全面書き直し、シンプルで高速な多機能を実現
- GDAL、GEOS、PROJを使い、読み書き、操作、変換を
 実現
- sfstarsと相互変換が可能、ベクターとラスターの
 統合的な分析を実現

rgdalパッケージの移行状況

  • sfstarsterraなどへの移行を推奨しています
  • ステアリング委員会を設立し、適用可能な変更を探索しています
  • rgdalを使用するパッケージのメンテナに連絡し、移行ガイダンスを提供しています
  • sprgdalなどを使用しないオプションを追加する予定です
  • rasterパッケージの修正を支援しています
  • sprgdalのコードをsfstarsに置き換える方法を示しています

2022年4月時点で約300個のうち約200個を移行した

空間データのパッケージの今後

以下の技術が期待されています

  • クラウドサービスやプラットフォームとの連携により、AWSやAzureなどの格納データへアクセス、処理が可能になること
  • 並列化や分散化などの技術により、大規模データの効率的な処理や分析が可能になること

まだ進化の途中であり、発展の余地があります

まとめ

  • rgdalパッケージのメンテナンスが終了します
  • 新しい設計に基づくパッケージ(sfstarsterra)が登場して、既存の問題点を改善しました
  • クラウドや大規模データへの対応が期待されています
  • 空間データを扱うパッケージは時代とともに進化しています