2018-01-01から1年間の記事一覧

【KPI設計】KPIには2つの数字を使う

KPIのおすすめ書籍 KPIには2つの数字がある 具体的な例 どのように使い分ける 観測値のKPI 変化率のKPI 2種類の数値を使い分けてKPI設計 観測値・変化率どちらを使うべき?

【図解】SQLのpartition byの使い方

partition byとは? 参考文献 処理を図解 クエリ OVER句 処理イメージ 記法 前処理について まとめ 参考文献

【BigQuery】日付の差分を計算する

DATE_DIFF関数 記法 使い方 実行結果 留意点 参考文献

【図解】SQLでJOINを使う方法(OUTER・LEFT・RIGHT)

目次 JOINとは? (INNER) JOIN LEFT JOIN RIGHT JOIN LEFT RIGHTどっちから結合する? 参考文献 JOINとは? JOINを簡単に説明すると、テーブルとテーブルを結合することです。 あるキーを用いて、複数のテーブルを結合してあげます。 例えば、以下のような社…

【SQL入門】中間テーブルを複数作成する方法

中間テーブルとは? WITH句を使えば、一時的なテーブルを作成することができます。 これを利用する目的は、重複するクエリやデータを利用する際に、 何度も同じクエリを記載したり、処理する必要がなくなるため、 クエリの可読性が上がることがメリットです…

【tableau】計算フィールドを使って日付の差分を計算する

計算フィールドを使って日付の差分を算出 さて、今回は日付の差分を算出するために、計算フィールドを利用したいと思います。 利用するデータは、tableauで有名なサンプルデータスーパーストアです。 やりたいこと オーダー日と出荷日の差分を取得して、平均…

【SQL】レベル別おすすめ参考書4冊

初級 これからSQLを始める人におすすめ! スッキリわかるSQL入門 第2版 ドリル222問付き! (スッキリシリーズ)作者: 中山清喬,飯田理恵子,株式会社フレアリンク出版社/メーカー: インプレス発売日: 2018/11/30メディア: 単行本(ソフトカバー)この商品を含む…

【SQL入門】DISTINCTで重複する値を処理

SQL

DISTINCTとは? SELECTで選択したカラムに重複する値があった場合、 その重複を除外して結果を返してくれます。 実際に使ってみる 社員名と部署、年齢が格納されたテーブルを利用します。 社員名 部署 年齢 田中 営業 30 佐藤 経理 25 鈴木 営業 25 田中 総…

【SQL】よく使う文法まとめ

今まで書いてきた記事をまとめております。 記事を更新すると、まとめも随時更新していきたいと思います。 入門 集約 HAVINGの使い方 関数、CASE文 DISTINCTで重複する値を処理 CASE文の使い方 EXISTS句の使い方 LIKEの使い方 INTERSECT,EXCEPT,UNIONの違い…

【SQL入門】ウィンドウ関数の使い方

SQL

ウィンドウ関数でできること ウィンドウ関数とは、分析する際の関数として非常に便利です。 主に、ランキングや連番を付与することが可能です。 ウィンドウ関数を使ってみる 早速、具体例を用いて説明していきましょう。 参考文献 入門者の方に非常におすす…

【SQL入門】INTERSECT,EXCEPT,UNIONの違いを図解

はじめに INTERSECT, EXCEPT, UNIONの違いを図で表現します! 複数のテーブルを扱う際に利用する上記のクエリ。 サンプルクエリも用いてご説明をいたします。 参考文献 入門者の方に非常におすすめの本になります。 わかりやすい解説から、練習問題までたく…

【SQL入門】CASE文の使い方

SQL

記述方法 CASE文には2つの書き方が存在します。 単純CASE文 CASE sex WHEN 1 THEN '男' WHEN 0 THEN '女' ELSE 'その他' END 性別 検索CASE文 CASE WHEN sex = 1 THEN '男' WHEN sex = 0 THEN '女' ELSE 'その他' END 性別 単純CASE文のほうが、シンプルに記…

HAVINGの使い方 【SQL入門】

SQL

HAVINGとは? GROUP BY句によって集計された結果に対して 条件を指定することが可能です。 記述方法 SELECT col, count(*) as cnt FROM table GROUP BY col HAVING count(*) > 50 記述方法はこの通り、GROUP BYのあとにHAVINGを記載します。 そして、SELECT…

【SQL 入門】LIKEの使い方

SQL

LIKEとは? 文字列の部分一致検索を行うときに使います。 「=(イコール)」を使う際には、完全に値が一致しなければなりません。 しかし、LIKEは文字列の一部が一致しているものを探してくれます。 書き方 SELECT * FROM table WHERE col LIKE '%sample%' …

【SQL】複数キーで結合(JOIN)する方法!

SQL

JOINを複数キーで行う テーブルをJOINするときに、キーが複数発生することもあると思います。 そんなとき、どうやってキーを複数選択するでしょうか。 複数キーでJOIN SELECT * FROM table_a as A JOIN table_b as B ON A.key = B.key AND A.key2 = B.key2 …

正しいKPIの設計方法とは?

KPIとは? そもそも、KPIとは何でしょうか? Key Performance Indicatorを略したものになります。 営業をされている方だと、受注率や訪問件数。 製造管理をされている方だと、不良品排出率などでしょうか。 ビジネスシーンで、よく使われるKPI。 ただ、このK…

【SQL】unionとunion allの違い

SQL

unionとunion allの違い テーブルに重複するデータが発生した場合、 union allとunionでは処理が少し異なります。 union all テーブルを縦に結合する 結合するテーブルに重複するデータがあっても、 そのまま結合する 身長・体重のデータが格納されたテーブ…

exists句の使い方を解説 SQL入門

SQL

exists句とは? サブクエリ内で実行されたクエリの結果を確認し、 条件に合致するもののみを利用する方法です。 参考文献 SQL初心者の人には、これが一番おすすめの本になると思います。 丁寧な解説から、練習問題も豊富に用意されているので、 これからSQL…

分析に必要なスキルについて考える

分析者にとって必要なスキルって? まず分析力を考えるにあたって、以下の2つの側面があると思う。 イッシュー度 解の質 イシュー度 これは、分析を行うにあたって本当に解くべき課題は何かを見抜く力を指す。 例えば、あなたが経営している飲食店の売上が減…

【計算フィールド】Tableauで重複排除してカウントする

環境 Tableau Public データセット:アメリカで人気の新生児名 やりたいこと 年毎に、名前のユニークカウントをする。 名前のバリエーションが、どのように変化したのか可視化する。 参考書籍 Tableauの本は、これが一番有名かなと思います。 この本の内容を…

【Python】whereとmaskでpandas.dataframeへアクセス

whereとmaskとは? データ分析の際に、データフレームをあつことが多いと思います。 データフレーム内に格納された値を判別し、別の値を格納したいことがあります。 つまり、whereとmaskを使うことでデータフレーム全体に対して置換処理が可能になります。 …

【Python】リスト内包表記でifを使う

リスト内包表記とは? リスト内包表記とは、リストや辞書に対してループ処理を実行し、 再びリストを返してくれる処理を指します。 書き方 まずは、リストを作成 sample = [] for i in range(10): sample.append(i) print(sample) sampleの中身を確認 [0, 1,…

【Python】実行時の引数を設定(argparse)

argparseとは? python実行時に引数を与えることがあります。 argparseを用いれば、簡単に引数の処理ができます。 例えば、以下のように--argとオプションを設けて Pythonを実行することができます。 python sample.py --arg hoge 基本処理 オプションなし i…

【Python】設定ファイル(.ini)を読み込む(configparser)

iniファイルとは? データベースの接続先などをスクリプトに直接書き込まず、 外部の設定ファイルに記載しておく。 接続先などが変更された際にスクリプトを直接編集する必要がなくなり、 保守性が高くなる。 記載方法 .iniファイルには、以下のような方法で…

【Python】lambdaの使い方

lambdaとは? lambdaとは、名前を持たない関数定義することができます。 また、関数を変数に代入することが可能です。 参考文献 Pythonをこれから勉強される方には、 この本が一番参考になるのではないでしょうか。 みんなのPython 第4版作者: 柴田淳出版社/…

【時系列分析】日経平均株価を予測してみる

時系列分析の実践として、日経平均株価のデータを使ってみたいと思います。 利用したデータは、以下のサイトからCSVで出力できますので、 ぜひ分析される際には、ダウンロードしてみていはいかがでしょうか。 データ引用もと 日経平均プロフィル 参考書籍 現…

時系列分析(ARMA・ARIMA・SARIMA)

前回に引き続き、時系列分析に関して解説をしていきたいと思います。 今回の内容は、時系列分析では有名な沖本本を参考にして、 記載をいたしました。 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー)作者: 沖本竜義出版社/メーカー: 朝倉書店…

時系列分析(ARモデル・MAモデル)

今回より、数回に渡って時系列分析の勉強した内容を 自らの備忘録も兼ねてブログに残していきたいと思います。 テーマとしては、AR・MA・ARMA・ARIMA・SARIMA・状態空間モデルと 分けて説明していこうと思います。 もし、誤りなどございましたらご指摘いただ…

【Git】プロジェクトでの使い方

Git

バッチ処理を構築する 分析プロジェクトを経験していると、分析処理バッチを構築する事があると思います。 普段、分析だけを行うなら開発環境とか本番環境とか、 あまり気にすることが無いと思います。 ただ、バッチを構築するならば、本番・開発をきちんと…

【Hive】 Hiveで配列を展開する

今回は、Hiveで配列になっているデータを展開する方法をご紹介します。 テーブル:sample_table id values 1 ['A','B'] 2 ['B','C'] このようなテーブルがあるときに、 idを元にvaluesを縦に展開したいときがあります。 ↓展開したあとのイメージがこちらです…