データサイエンティストのためのHiveQL分析クエリテンプレート その3
本記事は移転しました。新サイトにリダイレクトします。
*トレジャーデータはデータ収集、保存、分析のためのエンドツーエンドでサポートされたクラウドサービスです。
データサイエンティストのためのHiveQL分析クエリテンプレートシリーズ:
その2に引き続いてB. < m1|Bin(m2), Bin(m3) >に属するパターンを見ていきます。
パターン B-3:< m1 | Bin(m2) >
より一般的なこちらのパターンを見ていきます。
SELECT ceil( #m2/width )*width AS x, SUM(#m1) AS sum
FROM
(
SELECT #m1, #m2, 1 AS one
FROM table
WHERE condition
) t1
JOIN
(
SELECT POW(10,floor(LOG10(MAX( #m2 )))-1) AS width, 1 AS one
FROM table
WHERE condition
) t2
ON t1.one = t2.one
GROUP BY ceil( #m2/width )*width
ORDER BY x
例
先ほどは中古車の相場価格の頻度分布を見ましたが,今回はそれぞれの区間での平均走行距離を求めています。
価格帯が安いものほど過走行気味ですが,120万円を越える当たりからは平均5万km前後で推移しているようです。
パターン B-4:< m1 | dim1, Bin(m2) >
SELECT ceil( #m2/width )*width AS x, %dim1, AVG(#m1) AS avg
FROM
(
SELECT #m1, #m2, 1 AS one
FROM table
WHERE condition
) t1
JOIN
(
SELECT POW(10,floor(LOG10(MAX( #m2 )))-1) AS width, 1 AS one
FROM tableWHERE condition
) t2
ON t1.one = t2.one
GROUP BY ceil( #m2/width )*width, %dim1
ORDER BY x, %dim1
例
(走行距離×年式別の平均中古車相場価格)セグメント化された走行距離と年式を両軸にしたテーブルを可視化します。各セルには平均中古車相場価格が入ります。