目次
注意してください、迷子にならないようにしてください。間違いがある場合は、メッセージを残してアドバイスをお願いします。どうもありがとうございました
序文
データアナリストとして、各SQLデータベースの機能やスキルの使い方、特に統計機能の使い方が充実しています。データの中央値、最頻値、分位数を数える方法はいくつかありますが、一般的に実際の業務のほとんどは SQL クエリを記述することであり、Python Pandas を使用してデータ分析を行いたい場合でも、これを行うのは非常に面倒です。データをエクスポートして読み取り、出力結果を再入力します。SQL で単純な問題を直接処理できる場合は、Pandas 処理用にエクスポートするよりもはるかに効率が高くなります。この記事では主にパーセンタイル分位関数の使用法を紹介します. 次のいくつかの記事では主に各SQLでの統計関数の使用法を詳しく説明します. 興味があり、役立つと感じている友人は注意してください. このブログはブロガーが長く維持していきますので、間違いなどありましたらコメント欄でご指摘ください。
HiveSQL での分位数の計算は、主に 2 つの関数percentile()およびpercentile_approx()によって実装されます。
1.パーセンタイル()
関数の使用構文:
percentile(col, p)
パラメータの説明:
col: 計算する列の名前を指定します。列の値は int 型である必要があります。
p: 取得した分位値を指定します。値の範囲は [0,1] で、0.5 の場合は中央値、0.75 の場合は第 3 四分位数などです。
使用例:
SELECT percentile(num,0.2) as two_parts#取二分位数
FROM dbbasename.table
さらに、シーケンスの形式で p を入力することもでき、入力シーケンスに対応するパーセンタイルを含むシーケンスも返されます。
SELECT percentile(num,array(0.2,0.4,0.6)) as parts#取二分位数
FROM dbbasename.table
二、percentile_approx()
関数の使用構文:
percentile_approx(DOUBLE col,p,B)
おおよその p パーセンタイルを見つけます。p は 0 から 1 の間でなければなりません。戻り値の型は double ですが、col フィールドは浮動小数点型をサポートしています。パラメータ B は、メモリ消費量のおおよその精度を制御します。B が大きいほど、結果の精度が高くなります。デフォルト値は 10000 です。col フィールドの個別の値の数が B 未満の場合、結果は正確なパーセンタイルになります。
SELECT percentile_approx(num,0.2,9999) as two_parts#取二分位数
FROM dbbasename.table
もちろん、同じようにシーケンスを出力することもできます:
SELECT percentile_approx(num,array(0.25,0.5,0.75)) as parts#取二分位数
FROM dbbasename.table
注意してください、迷子にならないようにしてください。間違いがある場合は、メッセージを残してアドバイスをお願いします。どうもありがとうございました
この問題は以上です。私はファンスタックです. ご不明な点がございましたら, お気軽にメッセージを残してください. 次号でお会いしましょう.