記事の対象者と解消できるお悩み
【対象者】
初中級データアナリスト
【興味関心】
- データの傾向分析
- データのばらつきを把握
- 統計的な指標の計算
- SQLスキルアップ
- BigQueryの関数活用
- データに基づいた意思決定
【解消できるお悩み】
- データの平均値や分散を計算したいけど、SQLの使い方がわからない…
- データのばらつき具合を把握したい
- 統計的な分析手法を学びたい
- BigQueryで統計分析を効率的に行う方法を知りたい
- データに基づいて、より的確な判断をしたい
記事作成者
【人物】株式会社志庵 代表取締役 佐藤 光 起業6年目
【経歴】株式会社光通信➜光通信同期と起業➜データアナリスト転職➜SaaSで2度目起業
【会社実績】
SaaS 資金調達無しARR2億円
SaaS GMV200億円
【内容】自社AaaSであるStruccle、webスクレイピング、BigQueryに関する記事を作成
各種用語
- ARR(Annual Recurring Revenue)
- サブスクリプションサービスの年間売上※当社はSaaS売上
- Struccle(ストラクル)
- 株式会社志庵が独自開発しているAaaS
- AaaS(アース)
- Data Analytics as a Serviceの意
- SaaS(サース)
- Software as a Serviceの意
- GoogleCloudPlatform
- Googleが提供するクラウドプラットフォーム。この中に様々なサービスが存在する。
- GCP(ジーシーピー)
- GoogleCloudPlatformの略
- BigQuery(ビッグクエリ)
- 上記GCPの中に含まれるデータ分析基盤サービス
- SQL(エスキューエル)
- データベースを操作するプログラミング言語
- クエリ
- SQLで記述した命令文
- クエリ例)
- SQL構文のクエリ⬇
SELECT item_name, price FROM sales_table where price >= 1000;
- 上記クエリ(命令文)の意味としては「売上テーブル(sales_table)から価格(price)が1000円以上の商品名(item_name)と価格(price)を抽出する」
- SQL構文のクエリ⬇
- ペタバイト
- データの単位 ペタバイト=1000テラバイト=約100兆行のデータ
概要
データ分析において、統計的な指標を計算することは、データの傾向や特徴を把握するために非常に重要です。Google CloudのBigQueryは、データの統計的な集計を簡単に行うための様々な統計集計関数を備えています。これらの関数を使いこなすことで、データの平均値、分散、標準偏差などを計算し、データの分布やばらつきを理解することができます。
この記事では、BigQueryで利用できる基本的な統計集計関数を、分かりやすい例とともに紹介します。BigQueryの無料公開データセットを使って、実際に手を動かしながら統計集計関数をマスターしましょう!
目次
- BigQueryの統計集計関数とは?
- BigQueryの基本統計集計関数一覧
- BigQuery公開データで実践!統計集計関数を使った分析例
- FAQ:BigQueryに関するよくある質問
- まとめ:BigQueryの統計集計関数をマスターして、データ分析スキルを向上させよう!
1. BigQueryの統計集計関数とは?
BigQueryの統計集計関数は、データセットに対して統計的な計算を行い、単一の値を返す関数です。これらの関数は、データの分布やばらつきを理解するために使用されます。例えば、平均値、分散、標準偏差、相関関係などを計算することができます。統計集計関数は、多くの場合、`GROUP BY`句と組み合わせて使用され、グループごとの統計量を計算することができます。
2. BigQueryの基本統計集計関数一覧
BigQueryで利用できる基本的な統計集計関数を、例とともに紹介します。
2.1 CORR
一連の数値ペアのピアソン相関係数を計算します。相関係数は、2つの変数の線形関係の強さを表す指標です。相関係数の値は、-1から1の範囲を取り、1に近いほど正の相関が強く、-1に近いほど負の相関が強くなります。
構文:
CORR(expression1, expression2)
例: taxi_trips テーブルから、乗車距離 (trip_distance) と運賃 (fare_amount) の相関係数を計算する
SELECT
CORR(trip_distance, fare_amount) AS correlation_coefficient
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
2.2 COVAR_POP
一連の数値ペアの母集団共分散を計算します。共分散は、2つの変数の関係性を表す指標です。共分散が正の値であれば、2つの変数は同じ方向に変化する傾向があり、負の値であれば、反対方向に変化する傾向があります。
構文:
COVAR_POP(expression1, expression2)
例: taxi_trips テーブルから、乗車距離 (trip_distance) とチップ金額 (tip_amount) の母集団共分散を計算する
SELECT
COVAR_POP(trip_distance, tip_amount) AS population_covariance
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
2.3 COVAR_SAMP
一連の数値ペアの標本共分散を計算します。標本共分散は、母集団共分散の推定値です。
構文:
COVAR_SAMP(expression1, expression2)
例: taxi_trips テーブルから、乗車距離 (trip_distance) とチップ金額 (tip_amount) の標本共分散を計算する
SELECT
COVAR_SAMP(trip_distance, tip_amount) AS sample_covariance
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
2.4 STDDEV_POP
値の母集団標準偏差を計算します。標準偏差は、データのばらつきを表す指標です。標準偏差が大きいほど、データのばらつきが大きいことを示します。
構文:
STDDEV_POP(expression)
例: taxi_trips テーブルから、乗車距離 (trip_distance) の母集団標準偏差を計算する
SELECT
STDDEV_POP(trip_distance) AS population_standard_deviation
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
2.5 STDDEV_SAMP
値の標本標準偏差を計算します。標本標準偏差は、母集団標準偏差の推定値です。
構文:
STDDEV_SAMP(expression)
例: taxi_trips テーブルから、乗車距離 (trip_distance) の標本標準偏差を計算する
SELECT
STDDEV_SAMP(trip_distance) AS sample_standard_deviation
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
2.6 STDDEV
STDDEV_SAMP のエイリアスです。
構文:
STDDEV(expression)
例: taxi_trips テーブルから、乗車距離 (trip_distance) の標本標準偏差を計算する
SELECT
STDDEV(trip_distance) AS standard_deviation
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
2.7 VAR_POP
値の母集団分散を計算します。分散は、データのばらつきを表す指標です。分散が大きいほど、データのばらつきが大きいことを示します。
構文:
VAR_POP(expression)
例: taxi_trips テーブルから、乗車距離 (trip_distance) の母集団分散を計算する
SELECT
VAR_POP(trip_distance) AS population_variance
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
2.8 VAR_SAMP
値の標本分散を計算します。標本分散は、母集団分散の推定値です。
構文:
VAR_SAMP(expression)
例: taxi_trips テーブルから、乗車距離 (trip_distance) の標本分散を計算する
SELECT
VAR_SAMP(trip_distance) AS sample_variance
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
2.9 VARIANCE
VAR_SAMP のエイリアスです。
構文:
VARIANCE(expression)
例: taxi_trips テーブルから、乗車距離 (trip_distance) の標本分散を計算する
SELECT
VARIANCE(trip_distance) AS variance
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015;
3. BigQuery公開データで実践!統計集計関数を使った分析例
ここでは、BigQueryの公開データセット「NYC Taxi Trips」を使って、統計集計関数を使った簡単なSQL分析例を紹介します。このデータセットには、ニューヨーク市のタクシー乗車に関する情報が格納されています。
例:ベンダーごとの乗車距離の平均、分散、標準偏差を計算する
SELECT
vendor_id,
AVG(trip_distance) AS average_distance,
VAR_POP(trip_distance) AS population_variance,
STDDEV_POP(trip_distance) AS population_standard_deviation
FROM
bigquery-public-data.new_york_taxi_trips.tlc_yellow_trips_2015
GROUP BY
vendor_id;
このクエリでは、`AVG`関数で平均乗車距離、`VAR_POP`関数で母集団分散、`STDDEV_POP`関数で母集団標準偏差を計算しています。`GROUP BY`句でベンダーIDごとに集計しています。
4. FAQ:BigQueryに関するよくある質問
Q1. BigQueryの無料枠を超えて利用すると、どのくらい費用がかかりますか?
A1. 無料枠を超えた場合、従量課金制で料金が発生します。料金は、処理したデータ量やストレージ容量などによって異なります。詳しくは、BigQueryの料金ページをご確認ください。
Q2. BigQueryで使えるSQLは、他のデータベースと同じですか?
A2. BigQueryは標準SQLをサポートしており、他のデータベースで学んだSQLの知識を活かすことができます。ただし、BigQuery独自の関数や構文も存在するため、BigQueryのドキュメントで詳細を確認することをおすすめします。
Q3. SQLの学習には、どのような教材がありますか?
A3. SQLの学習には、オンライン学習サイト、書籍、動画教材など、様々な教材があります。初心者向けの教材から、上級者向けの教材まで、レベルに合わせて選ぶことができます。Googleが提供するBigQueryのチュートリアルもSQLの学習に役立ちます。
5. まとめ:BigQueryの統計集計関数をマスターして、データ分析スキルを向上させよう!
BigQueryの統計集計関数は、データの傾向や特徴を把握するために非常に役立ちます。この記事で紹介した関数以外にも、様々な統計集計関数が用意されています。BigQueryの公式リファレンスなどを参考に、統計集計関数をマスターし、データ分析スキルを向上させましょう!
BigQuery導入サポート、転職検討中の方はお問い合わせフォームからご相談くださいませ。
誠心誠意精一杯対応いたします。
【参考URL】
GoogleCloudPlatform:https://console.cloud.google.com/welcome/new
BigQuery:https://cloud.google.com/bigquery?hl=ja
BigQueryリリース情報:https://cloud.google.com/bigquery/docs/release-notes
BigQuery料金:https://cloud.google.com/bigquery/pricing
BigQuery料金無料枠:https://cloud.google.com/bigquery/pricing?hl=ja#free-tier
Google Cloud活用事例:https://cloud.google.com/customers/index.html?hl=ja#
Looker Studio:https://cloud.google.com/looker-studio?hl=ja
Looker Studioサンプル:https://cloud.google.com/bigquery/docs/visualize-looker-studio?hl=ja