unionとunion allの違い テーブルに重複するデータが発生した場合、 union allとunionでは処理が少し異なります。 union all テーブルを縦に結合する 結合するテーブルに重複するデータがあっても、 そのまま結合する 身長・体重のデータが格納されたテーブ…
exists句とは? サブクエリ内で実行されたクエリの結果を確認し、 条件に合致するもののみを利用する方法です。 参考文献 SQL初心者の人には、これが一番おすすめの本になると思います。 丁寧な解説から、練習問題も豊富に用意されているので、 これからSQL…
分析者にとって必要なスキルって? まず分析力を考えるにあたって、以下の2つの側面があると思う。 イッシュー度 解の質 イシュー度 これは、分析を行うにあたって本当に解くべき課題は何かを見抜く力を指す。 例えば、あなたが経営している飲食店の売上が減…
環境 Tableau Public データセット:アメリカで人気の新生児名 やりたいこと 年毎に、名前のユニークカウントをする。 名前のバリエーションが、どのように変化したのか可視化する。 参考書籍 Tableauの本は、これが一番有名かなと思います。 この本の内容を…
whereとmaskとは? データ分析の際に、データフレームをあつことが多いと思います。 データフレーム内に格納された値を判別し、別の値を格納したいことがあります。 つまり、whereとmaskを使うことでデータフレーム全体に対して置換処理が可能になります。 …
リスト内包表記とは? リスト内包表記とは、リストや辞書に対してループ処理を実行し、 再びリストを返してくれる処理を指します。 書き方 まずは、リストを作成 sample = [] for i in range(10): sample.append(i) print(sample) sampleの中身を確認 [0, 1,…
argparseとは? python実行時に引数を与えることがあります。 argparseを用いれば、簡単に引数の処理ができます。 例えば、以下のように--argとオプションを設けて Pythonを実行することができます。 python sample.py --arg hoge 基本処理 オプションなし i…
iniファイルとは? データベースの接続先などをスクリプトに直接書き込まず、 外部の設定ファイルに記載しておく。 接続先などが変更された際にスクリプトを直接編集する必要がなくなり、 保守性が高くなる。 記載方法 .iniファイルには、以下のような方法で…
lambdaとは? lambdaとは、名前を持たない関数定義することができます。 また、関数を変数に代入することが可能です。 参考文献 Pythonをこれから勉強される方には、 この本が一番参考になるのではないでしょうか。 みんなのPython 第4版作者: 柴田淳出版社/…
時系列分析の実践として、日経平均株価のデータを使ってみたいと思います。 利用したデータは、以下のサイトからCSVで出力できますので、 ぜひ分析される際には、ダウンロードしてみていはいかがでしょうか。 データ引用もと 日経平均プロフィル 参考書籍 現…
前回に引き続き、時系列分析に関して解説をしていきたいと思います。 今回の内容は、時系列分析では有名な沖本本を参考にして、 記載をいたしました。 経済・ファイナンスデータの計量時系列分析 (統計ライブラリー)作者: 沖本竜義出版社/メーカー: 朝倉書店…
今回より、数回に渡って時系列分析の勉強した内容を 自らの備忘録も兼ねてブログに残していきたいと思います。 テーマとしては、AR・MA・ARMA・ARIMA・SARIMA・状態空間モデルと 分けて説明していこうと思います。 もし、誤りなどございましたらご指摘いただ…
バッチ処理を構築する 分析プロジェクトを経験していると、分析処理バッチを構築する事があると思います。 普段、分析だけを行うなら開発環境とか本番環境とか、 あまり気にすることが無いと思います。 ただ、バッチを構築するならば、本番・開発をきちんと…
今回は、Hiveで配列になっているデータを展開する方法をご紹介します。 テーブル:sample_table id values 1 ['A','B'] 2 ['B','C'] このようなテーブルがあるときに、 idを元にvaluesを縦に展開したいときがあります。 ↓展開したあとのイメージがこちらです…
みなさんはじめまして! 私は都内でデータサイエンティストとして働いています。 日々、様々な業界やコンテンツを対象にデータ分析を行っています。 今回は、データサイエンティスト自らが思う データ分析の際に重要なポイント3つをご紹介したいと思います。…
データフレームを扱う時に、ある値を参照して、 データフレームを分割したいなという時があると思います。 今回はPythonでデータフレームを分割する際の方法をお伝えします。 Pandasに関しては Pandasに関しては、こちらの書籍が非常に参考になります。 Pyth…
Python(pandas)でCSVファイルを扱う データ分析を行う際に、CSV形式のデータを扱う事が多いと思います。 PythonでCSVを扱う際のちょっとしたテクニックをご紹介します。 ①CSVに出力されたデータをPython(3系)で読み込む ②Python内で生成されたデータフレーム…
webページのアクセス解析を実施する際に、 ページ遷移のパターンを分析することがあると思います。 その際に使える前処理としてキーブレイクというテクニックがあります! 利用シーン 同一ページの遷移を取り除き、ユーザーが1セッション中に どのようなペー…
バッチ処理を行う際には、今日から○日前や△ヶ月前などを python内で動的に計算してから処理したいケースがあります。 そういった場合、どのようにして日付の計算をPythonで実行するのか、 これからみていきましょう。 まずは今日の日付の取得から import dat…
Hiveを使って、ある値をキーにして配列を作成したいときには、 以下の2つの方法があります。 COLLECT_LIST COLLECT_SET COLLECT_LIST COLLECT_LISTは、ある値をキーとして配列を作成します。 早速例を見ていきましょう。 このようなテーブルがあったとします…
Pythonを使ってワードクラウドを描画 ギレン閣下の演説を形態素解析 ワードクラウドってかっこいいな〜と思い、 ギレン閣下の演説を形態素解析して描画してみました。 ネタ元 ここのサイトから演説内容を拝借しました。 利用したのはギレン総帥の演説①です。…
HML分析とは? 代表的な例としては、アクセスログ解析をする際に、 ヘビーユーザー・ミドルユーザー・ライトユーザーの3つのグループに分けることがある。 それぞれの頭文字をとってH(ヘビー)M(ミドル)L(ライト)分析と言う。 例えば、ユーザーのPV数…
for文の進捗を確認 Pythonでfor文を実行しているときに、 「今どこらへんまで進んでるかな〜?」と思うことはないでしょうか。 数値を出力して進捗確認 進捗状況を確認するひとつの方法として、 実行スクリプトの中にprintで番号を出力する方法があります。 …
EC2立ち上げ方 必要なもの ・pemのキー・IPアドレス・ユーザー名(基本はec2-user) 手順①インスタンス立ち上げ AWSのサイトにログインして、ec2を立ち上げるマシンスペックなどを選択して、最後にpemキーを発行するpemキーはダウンロードされるので、~/.ssh…
ディレクトリ内に複数のCSVファイルが存在しており、 一つ一つread.csvをしていくのは非常に面倒である。 そこで、ディレクトリ内のファイル一覧取得からCSVへの読み込みまでの方法を備忘録として記録しておく。 使う関数 dir() lapply(pattern = "" ) names…
MySQLにて日本語のテキストを出力する際に、 「???」のような文字化けを起こしてしまっていた。 そこで原因をいくつか調べてみた結果、 文字コードを変更すれば問題なく出力されるということだったので 備忘録として残しておく。 MySQLを開いて、 >status…
今回はWEBスクレイピングの手始めとして 記事の真似事をしてみた。 参考としたのは↓のページ uytaz.com どうやらRでスクレイピングするときに複数の実施方法があるらしいが まずは一番簡単なrvestパッケージを活用した方法を試す。 抽出先はRstudioのwikiペ…
自分の macにSQLをインストール インストール先は以下の通り↓ MySQL :: Download MySQL Community Server ここからインストールを試みて、いざSQLを実行 インストールの方法は以下のサイトが詳しく書いてくれているので そちらを参照しながら進めてけばよい…
某有名データサイエンティストが集まる、サイトからデータを引っ張ってきて 隙間時間にデータをいじってみた。 その際の備忘録として記録する。 データ:飛行機の事故に関して いかにして事故が発生するのか決定木で描けないものかと思い、 「Rによるデータ…