日々のつれづれ

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

Rがどんどん広まってゆくな〜

かなり適当な訳ではありますが…

R言語統計学的データ解析や視覚化における標準的ツールの一種であり、Googleを含む多くのユーザーに幅広く利用されている。また、整数値や数列(2バイトを含む)のベクトル演算やその他の演算に対する拡張機能を持っている。しかし、64ビットの整数値には未対応であった。Romain Francoisはint64パッケージをCRANへ登録するとともに、RccpとRProtobufパッケージを専用に準備した。Googleが自社のエンジニアリングや定量解析に利用するDremel や Protocol Buffersといった重要な他のシステムとの連携において、しばしば64ビットクラスのデータを読み込みRを用いて統計解析を行う必要性があるため、この開発を非常に重要と考えている。

Romain はR標準の32ビットクラスの整数の組を保持するS4クラスのオブジェクトが高位、下位のビットに記憶させるのと同じように、int64 のベクトルに整数の組を記憶させている。ほぼすべての算術処理が既にRで実装されており、今後、新しいクラスを用いた作業へ拡張することになっている。これはビット演算が高性能のC++でかかれたコードがバックエンドで実行されることでデザインされている。例えるなら、つまりユーザーは:
・ 64ビット演算や、64ビットオブジェクトと整数値や数値の型との間で算術操作を行える
・ int64を明確に利用することで、64ビットの値を含むCSVファイルをの読み書きができ、colClassesがread.csvやwrite.csvへ受け渡すようになっている。 (with int64 version 1.1)
・ Rに組み込まれているシリアル化によって64ビットのloadとsaveができる
・ int64ベクトル演算の結果をサマライズできる。これはthe Summary Group Genericが管理するmax, min, range,そしての他の基本関数で実現できる

その他には、より高精度な解析を実行するにあたり、価値が高く強力なGNUライセンスのMultiple Precision Arithmetic LibraryやCRANパッケージのR GMPなどを準備している。また、Romainの新しいint64パッケージは64ビットのシステムに適合している。

Googleでは数年後には64ビットの数値演算が出来なくなることについて模索している。また、Romainとの協議の中で、64ビットのパッケージが我々の問題を解決してくれるだけでなく、幅広いオープンソースコミュニティーとしてより良くなることをうれしく思っている。

Bringing 64-bit data to R | Google Open Source Blog

爆発的に、Rの裾野が広がる予感…
自分の統計リタラシーをあげないと…