R
Rでテーブルを縦持ち、横持ちに変換したい時、以前は、spreadやgatherという関数がありました。(今もあるのですが、)上記2つに代わって新たに上位互換の関数として登場したのがpivot_longer、pivot_widerです。単純に縦持ち、横持ち変換するだけでなく、…
Rでの実行結果や分析結果をインタラクティブなwebアプリにできたら、、そんな風に思ったことはありませんか?今回は、そんな願いを叶えるべくshiniyとshinydashbordを使って簡単にwebアプリを作ってみたいと思います。なお、今回の内容は入門編ですので、よ…
以前の記事で、Rmecabを用いたテキストマイニング をご紹介しました。 www.medi-08-data-06.work Rmecabの内部で動くmecabですが、web上の最新のキーワードなどにも対応したNEologdを辞書に使用することができます。ちなみに毎週更新されているようです(す…
前回までで、微分、偏微分、最小二乗法、ベクトル、行列までを書いてきました。 www.medi-08-data-06.work www.medi-08-data-06.work www.medi-08-data-06.work www.medi-08-data-06.work 今回は、今までの知識を総動員し、ベクトルと行列による微分について…
確率分布と積分は、統計学を知る上では欠かせない数学知識です。今回は確率分布と確率変数の基本と、積分の関係性についてご説明していきます。 今回の目的は以下になります。 確率分布、確率変数とは何かを理解する。 確率質量関数、確率密度関数の違いを理…
前回はベクトルの基礎を扱いました。今回は、ベクトルの進化系である行列について書いていきます。行列までを学んでしまえば、数学嫌いな方でも、データサイエンスの様々な参考書を読み進めることができるでしょう! 今回の目的は以下になります。 行列の性…
ベクトルと行列は、データサイエンスの中でも頻出であり、とてもとても便利な概念です。今回からは、今まで学んだ平均や分散、微分、最小二乗法などを使って、ベクトルや行列の概念にふれていきます。 www.medi-08-data-06.work www.medi-08-data-06.work ww…
前回までで、平均や分散、微分、偏微分の基本的なところを扱ってきました。 www.medi-08-data-06.work www.medi-08-data-06.work 第3回となる今回は、今までの知識を使って統計、機械学習で最も基本的で、最も頻出の線形回帰と最小二乗法についてご紹介しま…
RとPythonで学ぶデータサイエンス数学の第2回となる今回は、関数と微分を扱っていきます。 www.medi-08-data-06.work この2つは統計学、機械学習の学習には欠かせない知識となりますが、概念自体は難しく無いので、しっかりと理解したいところです。目的は以…
統計学や機械学習を知る上で必ず必要になるのが算数・数学の知識です。しかし、中学や高校で数学を習ってはいるものの、いざ学び始めてみると数式や記号に圧倒されてしまう人も多いのではないでしょうか?? 今回から複数記事にまたがり、統計学や機械学習を…
前回は、prophetを使って、2ヶ月先のブログアクセス数を予測しました。 www.medi-08-data-06.work 今回はその答え合わせと、前回は触れなかった時刻周期の扱い方について書いていきます。 予測結果と実測値の比較 前回の予測結果はこのようになっていました…
中心極限定理とは、統計学を学び始めると必ずお目にかかる定理なのですが、安直に理解していると大変な勘違いをしてしまう定理です。しかし、いざ理解しようとしても、解説には難解なものも多くイメージしにくいのもまた現状です。今回はそんな中心極限定理…
テキストマイニング は文字列を対象したデータマイニング手法で、単語の出現頻度、出現タイミングなどを集計する簡単なものから、機械学習を用いてクラス分類する高度なものまで様々な解析手法があります。 今回はそんなテキストマイニング の中でも、単語の…
prophetはfacebookが無料で提供している時系列予測パッケージです。RでもPythonでも使うことができます。本家様サイトによると Prophet is a procedure for forecasting time series data based on an additive model where non-linear trends are fit with …
データ解析をする上で、Rを使うべきかPythonを使うべきか、この議論は多くの人が色々な意見を持っています。最近はPythonユーザーが増えていますが、Rをメインで使う人が少なからずいるのもまた事実です。 今回は統計解析をするならどっち?という観点からR…
ディープラーニングは言わずもがな、機械学習の世界では名実ともにエースと呼んでいいほど有名なアルゴリズムです。人間の脳を模倣していると聞くと、なんだかSFの世界を想像しますが、実は案外簡単なアルゴリズムで成り立っています。 今回は、そんなディー…
前回は機械学習において最も基本的なアルゴリズムである最急降下法を使って、重回帰モデルを作成しました。 www.medi-08-data-06.work 今回は、最急降下法とロジスティック回帰モデルを使って機械学習の醍醐味である分類問題を扱っていきたいを思います。 前…
機械学習の教師あり学習の中でも、重回帰モデルはとても有名です。統計学でも有名なこのモデルですが、機械学習では、最急降下法というもっとも基本的かつ、重要なアルゴリズムを使ってパラメーターを求めることができます。 今回は、最急降下法を使って重回…
主成分分析は、データの変数が多い時に、出来るだけ情報を減らさずに、次元を圧縮するテクニックとして用いられます。マーケティングにおいても、何かの商品に対する評価項目が複数ある場合に、それを少数の評価項目に圧縮し、総合力のような観点で評価する…
生存解析は医療の現場で用いられている手法で、ある薬を飲む群と飲まない群で死亡率が異なるのかなどといったアウトカムが生きるor死ぬなどの二値で、アウトカム発生までの時間の流れも考慮しなければならない場合に使用されます。 つまり、ビジネスの世界で…
前回は因果推論の王道テクニックである傾向スコアを使った回帰分析とマッチングについて紹介しました。今回も傾向スコアを使った解析手法の一つであるIPWと、傾向スコアは使いませんが理論的には同じになるStandardzationの紹介をしていきます。 www.medi-08…
世の中の事象における真の因果関係は神のみぞが知り、それに抗うために多くの因果推論テクニックが作られてきました。その中でも傾向スコアというのは、ランダム化検証ができない事象でも、データをゴニョゴニョすることで、理論上ランダム化に等しいことが…
古典的な時系列解析のモデルでは、時系列データが定常過程に従うことを前提としていました。しかし、世の中の多くの事象は定常過程に従うことはあまりなく、よりうまく現実を反映させることができるモデルが必要になります。 それが状態空間モデルです。状態…
時系列モデルを作るときは、データが定常過程に従っていることを前提とするモデルが多いです。しかし、現実には定常過程に従うデータはあまり多くありません。そんな非定常過程のデータを何となく多変量モデルで解析すると一見ものすごく当てはまりの良いモ…
一変量時系列の代表格であるARIMAモデルは、過去の自分が現在へ影響していることを前提としていました。しかし、時系列データではその他の変数から影響を受けることは往々にしてあります。 例えば、あるお店の売り上げは、そのお店の過去の売り上げだけでな…
前回は時系列解析の流れ、そしてARIMAモデルをデータから同定する方法について書きました。 www.medi-08-data-06.work 今回は、ARIMAモデルの予測について、そして単純なARIMAモデルでは説明できない周期性を、季節調整を使ってモデリングする方法について書…
前回は時系列解析の考え方や基本用語についてまとめました。今回はもう一歩進んで、実践に近づいた内容にしていきます。 www.medi-08-data-06.work 今回扱う範囲は、時系列データの前処理方法、AR、MA、ARMA、ARIMAです。それではいきましょう。 時系列解析…
時系列データとは、ある一時点ではなく、時間軸に沿ってデータが収集され、変数の並び方にも意味があるデータのことを指します。商品の売り上げを月ごとに集積したデータや、企業の株価データ、気温データ、電車の乗客数などが時系列データの例としてあげら…
正規表現の存在を知り、いつかは使えるようになりたいと思ったあの日から早2年、そろそろ正規表現を使えるようになります。 ということで、今回は正規表現をレベルごとにスッテプバイステップでまとめていきます。 正規表現とは? Step1:何でも良い一文字. …
Rでデータファイルを読み込むとき、{base}パッケージにはread.XXXという関数が備わっています。 私もcsvファイルを読み込むときは、ずっとread.csvを使用していましたが、{readr}を使うともっと高速に、そして処理のしやすい形でデータを読みこむことができ…