Hive経由で集計した値を、Pandasからスムーズに使うための方法を紹介します。 "スムーズ"に、というのは、「CSVを経由しない」と言い換えてもらって大丈夫です
準備
ライブラリとして、Dropboxの PyHive と Clouderaの impyla が必要です。
PyHiveを使っている理由は、必要な手続きが短いのと、PEP-0249に準拠しているからで、impylaを使っている理由は、as_pandasというユーティリティ関数を使いたいだけです。 なので、必須でないといえば必須でないです。
Anacondaを使っている場合は、下記の手順でインストールできます。
pip install impyla conda install -c https://conda.binstar.org/blaze pyhive
コード
from pyhive import hive from impala.util import as_pandas conn = hive.connect(host="localhost") cursor = conn.cursor() cursor.execute("SELECT * FROM table") df = as_pandas(cursor) df.describe()
で、df
にPandasのDataFrameオブジェクトが入ります(impylaの代わりにhiveになっているだけ)。
そんじゃーね!