R is a language and environment for statistical computing and graphics.

Googleは11月24日(米国時間)、「Rプログラミング言語」に「64ビット整数ベクタ」を実現するパッケージが登場したことを発表した。これはGoogleがRomain Francois氏のスポンサーシップを実施する形で実現した機能拡張とされている。

Rは統計計算や統計データのグラフィック化などを実施するためのプログラミング言語および統計処理環境。ベル研究所で開発された「S」のオープンソース版実装に相当するもので、現在でも盛んに開発されており、多くの統計方法を実装し、高度で美しいグラフィックレンダリングを実施することで知られている。統計処理においてはよく活用されているソフトウェアのひとつ。

Rはこれまで64ビットの整数をサポートしてこなかった。今回Romain Francois氏は、Rの機能を使ってこれを実現。型を外部のC++を使って実現するといったことをせずに、すべてRで実装した点が注目される。具体的にはデフォルトで提供されている32ビットの整数の組みをS4オブジェクトとして実装。それぞれ上位ビットと下位ビットを格納して64ビットを表現している。さらに、ほとんどのR組み込みの算術演算がこの64ビットベクタの演算に対応しているという特徴がある。すでに次の操作が可能だと説明されている。

  • 64ビットオペランド、64ビットオブジェクト、整数、数値型の算術演算。
  • Summary演算(max, min, range, sum, prod, any, allなど)に対応。
  • R組み込みのシリアライズ機能においてシリアライズ可能。
  • 64ビット整数ベクタであることを指定してのCSVデータ読み書きに対応。

Googleはデータ処理にRを活用しており、今回のスポンサーシップの背景にも活用する技術の強化を図る狙いがあるものと見られる。Googleはデータセット解析やデータ流通にDremelやProtocol Bufferを採用しており、Romain Francois氏は両プロダクトに対する拡張パッケージの提供も実施する予定になっている。同パッケージを利用するとDremelやProtocol Bufferから直接Rの64ビット整数ベクタが利用できるようになるという。R言語をデータ分析やデータ解析に利用している場合、Googleのこの動向に注目しておきたい。