OpenRefine

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ナビゲーションに移動 検索に移動
OpenRefine
OpenRefine New Logo.png
開発元 Freebase。後にGoogle。現在はオープンソースコミュニティ
初版 2010年11月10日 (10年前) (2010-11-10)
最新版
2.8 / 2017年11月19日 (3年前) (2017-11-19)[1]
リポジトリ ウィキデータを編集
プログラミング
言語
Java[2]
プラットフォーム Microsoft Windows, Linux, macOS
対応言語 英語、イタリア語、中国語、日本語、フランス語
サポート状況 Active
種別
ライセンス BSD License
公式サイト openrefine.org
テンプレートを表示

OpenRefine(旧称:Google Refine、さらに以前はFreebase Gridworks)は、スタンドアローンのオープンソースのデスクトップアプリケーションで、データのクリーンナップ、他の形式への変換、データラングリングと呼ばれる処理を行うことができる[3]。見た目はスプレッドシートアプリケーションに似ているが(スプレッドシートファイル形式も処理できる)、よりデータベースに近い動作をする。

各列(カラム)の下にセルを持つデータの各行に対して様々な操作を行う。これは、リレーショナルデータベースのテーブルに非常によく似ている。1つのOpenRefineプロジェクトは1つのテーブルからなる。ユーザーは、ファセット(facet)と呼ばれるフィルタリング条件(例えば、指定した列が空でない行のみを表示するなど)の定義を使用して、表示する行をフィルタすることができる。スプレッドシートとは違い、OpenRefineのほとんどの操作は、表示された行全体に対して実行される。たとえば、1つのカラムの下にある全ての行のすべてのセルに対して変換処理が適用されたり[4]、すでにあるカラムを元にして新しいカラムが作成されるといった処理となる。すべての操作はプロジェクト内に保存された1つのデータセットに対して実行され、別のデータセットに対して同じ操作を繰り返し適用することができる。

スプレッドシートとは異なり、セルの中には数式は保存されず、数式はデータの変換に使われ、また、データの変換は1回のみ実行される[5]。データを変換する処理式はGeneral Refine Expression Language (GREL)[6]と呼ばれるDSLの他、Jython(つまりPython)やClojureで記述することも可能である[7]

プログラムにはウェブユーザーインターフェイスが組み込まれているが、ウェブサービス(SAAS)としてホストされるわけではなく、ダウンロード後にローカルマシンで動作するためのものである。OpenRefineを実行すると、ローカルでウェブサーバが起動し、このウェブサーバ上で動作するウェブUIがブラウザで自動的に開かれる。

ソフトウェアの使用例[編集]

  • 乱雑なデータのクリーニング:たとえば、部分的にしか構造化されていないテキストファイルを編集するとき、変換やファセット、クラスタリング機能を利用することで、きれいに構造化されたデータを作成することができる[8]
  • データの変換:正規化・非正規化の処理を行いながら、他の形式に変換することができる。
  • ウェブサイトのデータのパース:OpenRefineにはURL取得機能がある理、jsoup HTMLパーサとDOMエンジンが搭載されている[9]
  • JSONを返す)ウェブサービスからデータを取得しながらデータセットへデータの追加[10]。たとえば、住所のジオコーディング地理座標系に変換するために使用できる[11]
  • Wikidata(旧称:Freebase[12]への名前合わせ:これは照合(名寄せ)機能に関係し、セル内の文字列の値をWikidataのエンティティにマッピングすることができる[13]

インポートとエクスポートの対応フォーマット[編集]

インポートは以下のフォーマットに対応している[14]

入力データが標準化されていないテキストフォーマットだった場合、行全体をカラムに分割せずにインポートすることができ、その後、OpenRefineのツールを使ってカラムが抽出できる。アーカイブと圧縮ファイルもサポートされ(.zip, .tar.gz, .tgz, .tar.bz2, .gz, or .bz2)、URLから入力ファイルを直接インポートすることもできる。ウェブページをインプットとして使用するときは、URLのインポートリストを指定して、URL取得機能を呼び出せる。

エクスポートは以下のフォーマットに対応している[16]

  • TSV
  • CSV
  • Microsoft Excel
  • HTML table
  • Templating exporter:出力データに対してカスタムのテンプレートを定義することができる。これを使えば、たとえばMediaWikiのテーブルを出力することができる。

独自フォーマットのOpenRefineのプロジェクト全体は、.tar.gzアーカイブ形式で出力できる。

歴史[編集]

OpenRefineは、MetawebによってFreebase Gridworksとして開発が始まり、2010年1月にオープンソース化された[17]。2010年7月16日、GoogleはFreebaseの作者であるMetawebを買収し[18]、2010年11月10日にFreebase Gridworksと呼ばれていたソフトウェアをGoogle Refineと改名し、バージョン2.0をリリースした[19]。2012年10月2日、元の作者のDavid HuynhはGoogleではGoogle Refineのサポートを終了すると発表した[20][21][22]。以降、コードベースがオープンソースプロジェクトに移行し、OpenRefineと改名された[23]

参考文献[編集]

  1. ^ Release OpenRefine v2.8”. 2018年10月5日閲覧。
  2. ^ OpenRefine/OpenRefine - GitHub”. 2017年6月25日閲覧。
  3. ^ OpenRefine Project Home”. 2018年10月5日閲覧。
  4. ^ Editing by transforming: Cell Editing wiki page from Refine documentation”. 2012年4月18日閲覧。
  5. ^ Comparison with spreadsheet software: Cell Editing wiki page in Refine documentation”. 2012年4月18日閲覧。
  6. ^ General Refine expression language OpenRefine/OpenRefine Wiki GitHub. Github.com (2013-04-03). Retrieved on 2013-08-16.
  7. ^ Expressions: Refine documentation”. 2012年4月18日閲覧。
  8. ^ Screencast: Google Refine 2.0 - Introduction (1 of 3) - editing government data”. 2012年4月18日閲覧。
  9. ^ Stripping HTML: Refine documentation wiki page”. 2012年4月18日閲覧。
  10. ^ FetchingURLsFromWebServices wiki page: Refine documentation”. 2012年4月18日閲覧。
  11. ^ Screencast: Google Refine 2.0 - Data Augmentation (3 of 3) - using Openstreetmap Nominatim for geocoding and Freebase for augmentation”. 2012年4月18日閲覧。
  12. ^ Schema Alignment: Refine documentation wiki page”. 2012年4月18日閲覧。
  13. ^ OpenRefine documentation: Reconciliation”. 2017年3月12日閲覧。
  14. ^ Importers: Refine documentation wiki page”. 2012年4月18日閲覧。
  15. ^ Changelog for 2.5”. 2012年4月18日閲覧。
  16. ^ Exporting: Refine documentation wiki page”. 2012年4月18日閲覧。
  17. ^ https://code.google.com/p/google-refine/source/detail?r=2
  18. ^ “Google Official Blog: Deeper understanding with Metaweb”. http://googleblog.blogspot.com/2010/07/deeper-understanding-with-metaweb.html 2012年4月18日閲覧。 
  19. ^ “Google Opensource blog: Announcing Google Refine 2.0, a power tool for data wranglers”. http://google-opensource.blogspot.com/2010/11/announcing-google-refine-20-power-tool.html 2012年4月18日閲覧。 
  20. ^ “[announcement the future of the Refine projects”]. https://groups.google.com/forum/#!topic/openrefine/a3R6afKb4-4 
  21. ^ “From Freebase Gridworks to Google Refine and now OpenRefine”. http://googlerefine.blogspot.ca/2012/10/from-freebase-gridworks-to-google.html 
  22. ^ OpenRefine. OpenRefine. Retrieved on 2013-08-16.
  23. ^ google-refine - Google Refine, a power tool for working with messy data (formerly Freebase Gridworks) - Google Project Hosting. Code.google.com. Retrieved on 2013-08-16.

外部リンク[編集]