StatsFragments

Python, R, Rust, 統計, 機械学習とか

Python

pandas 日時まわりのリサンプリング/オフセット処理

こちらの続き。 Python pandas で日時関連のデータ操作をカンタンに - StatsFragments 今回のサンプルデータには自分の歩数のデータを使いたい。インスパイヤ元は以下のサイトだ。 下半身のデータをオープンにした - 盆栽日記d.hatena.ne.jp データの読み込…

pandas 0.16.0/0.16.1 の主要な新機能

先日 5/11 に pandas 0.16.1 がリリースされた。前バージョンである 0.16.0 とあわせて、主要な変更点である以下3点の概要をまとめたい。各見出しの括弧内には対応したバージョンを記載した。 簡単な列追加 / DataFrame.assign (0.16.0) 文字列処理の強化 (0…

簡単な集約/変換処理を PySpark & pandas の DataFrame で行う

こちらの続き。 簡単なデータ操作を PySpark & pandas の DataFrame で行う - StatsFragmentssinhrks.hatenablog.com 準備 サンプルデータは iris 。今回は HDFS に csv を置き、そこから読み取って DataFrame を作成する。 # HDFS にディレクトリを作成しフ…

Python pandas 関連エントリの目次

このブログ中の pandas 関連のエントリをまとめた目次です。 最近 pandas 開発チーム と PyData グループ の末席に加えていただき、パッケージ自体の改善にもより力を入れたいと思います。使い方についてご質問などありましたら Twitter で @ ください。 目…

簡単なデータ操作を PySpark & pandas の DataFrame で行う

Spark v1.3.0 で追加された DataFrame 、結構いいらしいという話は聞いていたのだが 自分で試すことなく時間が過ぎてしまっていた。ようやく PySpark を少し触れたので pandas との比較をまとめておきたい。内容に誤りや よりよい方法があればご指摘 下さい…

Python Theano function / scan の挙動まとめ

勉強のため たまに Pylearn2 など Theano を使ったパッケージのソースを眺めたりするのだが、theano.scan の挙動を毎回 忘れてしまう。繰り返し調べるのも無駄なので、一回 整理したい。theano.scan の動作は theano.function が前提となるため、あわせて書…

Python pandas / scikit-learn 向けのちょっとしたパッケージ作った <前編>

こちらの続き。 sinhrks.hatenablog.com pandas のデータを scikit-learn でうまく処理するためのパッケージを作ったのでその使い方を書きたい。今回は 適当なデータをファイルから読み込み -> 前処理してクラスタリングする、という例を書く。 このパッケー…

Python pandas のデータを scikit-learn でうまいこと処理したい

はじめに Python で機械学習する場合、pandas で前処理したデータを scikit-learn で処理する、というケースが多いと思う。pandas, scikit-learn には それぞれ 簡単にできる / できない処理があるので、うまいこと連携できるとうれしい。 scikit-learn の各…

Python pandas 日本語環境向けのちょっとしたパッケージ作った

最近の空き時間は GitHub で草植えをしている。まずは pandas を日本語環境で使う場合に たまに必要になる処理をまとめた パッケージを作った。 インストール pip install japandas 機能 機能の一覧はこちら。 日時処理 日本語日付のパース 日本の祝日カレン…

Python pandas で日本の株価情報取得とローソク足チャート描画

以下の記事を読んでいて、pandas 標準では日本株式の情報が直接とれないことに気づいたのでやり方をまとめたい。 pandas のデータ集約とグループ演算を利用して株価を分析する - Qiita この記事では以下 2 点の処理について書く。 Yahoo! ファイナンス から…

RStan / PyStan 開発版を GitHub からインストールする

最近ちょっとした事情で Stan を使いたく、状態空間モデルの勉強とあわせて こんな感じ でやっている。その環境構築ネタ。 補足 Stan って何?という方は StanTutorial がわかりやすい。 Stan の公式バインディングとしては R 用の RStan、Python 用の Pysta…

Python pandas 図でみる データ連結 / 結合処理

なんかぼやぼやしているうちにひさびさの pandas エントリになってしまった。基本的な使い方については網羅したい気持ちはあるので、、、。 今回は データの連結 / 結合まわり。この部分 公式ドキュメント がちょっとわかりにくいので改訂したいなと思ってい…

Amazon EC2 上に Pylearn2 環境を構築する

最近 pylearn2 や theano を使って Deep Learning を少しずつ勉強しているのだが、いろいろと試す場合には処理時間が結構ネックになる。とくに画像処理をしたい場合には GPU 計算ができないとちょっと現実的でない。 とはいえ、そこそこの PC + GPU を買おう…

Theano で Deep Learning <6>: 制約付きボルツマンマシン <前編>

DeepLearning 0.1 Documentation の第六回は 制約付きボルツマンマシン (Restricted Boltzmann Machines / 以降 RBM) 。RBM は オートエンコーダとはまた別の事前学習法。かなり分量があるので、とりあえず元文書 前半のRBM の仕組みまで。 RBM を理解しにく…

Theano で Deep Learning <6の準備>: ホップフィールドネットワーク

DeepLearning 0.1 Documentation の第六回は 制約付きボルツマンマシン (Restricted Boltzmann Machines / RBM) なのだが、文書/内容とも結構 ボリュームがあるので外堀から埋めていきたい。 そのため、今回は ボルツマンマシンの前身である ホップフィール…

Python networkx でマルコフ確率場 / 確率伝搬法を実装する

ここ 1ヶ月にわたって 聖書 DeepLearning 0.1 Documentation を読み進め、ようやく 制約付きボルツマンマシン の手前まできた。 Deep Learning カテゴリーの記事一覧 - StatsFragments 制約付きボルツマンマシン (RBM) の解説 には RBM = マルコフ確率場 ( M…

Theano で Deep Learning <5> : 多層 Denoising オートエンコーダ

Python Theano を使って Deep Learning の理論とアルゴリズムを学ぶ会、第五回。 目次 DeepLearning 0.1 について、対応する記事のリンクを記載。 第一回 MNIST データをロジスティック回帰で判別する 英 第二回 多層パーセプトロン 英 第三回 畳み込みニュ…

Theano で Deep Learning <4> : Denoising オートエンコーダ

Python Theano を使って Deep Learning の理論とアルゴリズムを学ぶ会、第四回。 目次 DeepLearning 0.1 について、対応する記事のリンクを記載。 第一回 MNIST データをロジスティック回帰で判別する 英 第二回 多層パーセプトロン 英 第三回 畳み込みニュ…

Python simpy による離散イベントシミュレーション

この記事は Python Advent Calendar 2014 の14日目の記事です。 この記事では、離散イベントシミュレーション用の Python パッケージ simpy について書きたい。simpy の現在のバージョンは 3.0.5、イニシャルリリースは 2002 年とかなり歴史のあるパッケージ…

Theano で Deep Learning <3> : 畳み込みニューラルネットワーク

Python Theano を使って Deep Learning の理論とアルゴリズムを学ぶ会、第三回。今回で教師あり学習の部分はひと段落。 目次 DeepLearning 0.1 について、対応する記事のリンクを記載。 第一回 MNIST データをロジスティック回帰で判別する 英 第二回 多層パ…

Python pandas strアクセサによる文字列処理

概要 今週の 週刊 pandas は文字列処理について。やたらと文字数が多くなったのだが、これはデータを都度表示しているせいであって自分の話がムダに長いわけではない、、、と思いたい。 今回はこちらの記事に書いた内容も使うので、適宜ご参照ください。 Pyt…

多層パーセプトロンの動きを可視化する

概要 多層パーセプトロン記事の補足。下の記事の最後で、入力されたデータを隠れ層で線形分離しやすい形に変換している、ということを確かめたかったが、MNIST データでは次元が高すぎてよくわからなかった。ということで、もうちょっとわかりやすい例を考え…

Theano で Deep Learning <2> : 多層パーセプトロン

Python Theano を使って Deep Learning の理論とアルゴリズムを学ぶ会、第二回。 目次 DeepLearning 0.1 より、 第一回 MNIST データをロジスティック回帰で判別する 英 第二回 多層パーセプトロン (今回) 英 第三回 畳み込みニューラルネットワーク 英 第四…

Python pandas の算術演算 / 集約関数 / 統計関数まとめ

概要 恒例の pandas 記事。今回は 基本的な算術演算についてまとめた。このあたりの挙動は numpy と一緒で直感的だと思うが、知っていないとハマるポイントがいくつかあるので。 準備 サンプルは DataFrame のみ。だが内容は Series でも同じ ( 行/列 2次元…

Theano で Deep Learning <1> : MNIST データをロジスティック回帰で判別する

概要 ここ数年 Deep Learning 勢の隆盛いちじるしい。自分が学生の頃は ニューラルネットワークはオワコン扱いだったのに、、、どうしてこうなった?自分もちょっと触ってみようかな、と記事やらスライドやら読んでみても、活性化関数が〜 とか、 制約付き何…

ロジスティック回帰 (勾配降下法 / 確率的勾配降下法) を可視化する

いつの間にかシリーズ化して、今回はロジスティック回帰をやる。自分は行列計算ができないクラスタ所属なので、入力が3次元以上 / 出力が多クラスになるとちょっときつい。教科書を読んでいるときはなんかわかった感じになるんだが、式とか字面を追ってるだ…

pandas でメモリに乗らない 大容量ファイルを上手に扱う

概要 分析のためにデータ集めしていると、たまに マジか!? と思うサイズの CSV に出くわすことがある。なぜこんなに育つまで放っておいたのか、、、? このエントリでは普通には開けないサイズの CSV を pandas を使ってうまいこと処理する方法をまとめたい…

Python pandas データ選択処理をちょっと詳しく <後編>

概要 こちらの続き。これで pandas でのデータ選択についてはひとまず終わり。 Python pandas データ選択処理をちょっと詳しく <前編> - StatsFragments Python pandas データ選択処理をちょっと詳しく <中編> - StatsFragments サンプルデータの準備 データ…

Python pandas データ選択処理をちょっと詳しく <中編>

こちらの続き。 Python pandas データ選択処理をちょっと詳しく <前編> - StatsFragments 上の記事では bool でのデータ選択について 最後にしれっと書いて終わらせたのだが、一番よく使うところなので中編として補足。 まず __getitem__ や ix の記法では、…

Python pandas データ選択処理をちょっと詳しく <前編>

概要 書いていて長くなったため、まず前編として pandas で データを行 / 列から選択する方法を少し詳しく書く。特に、個人的にはけっこう重要だと思っている loc と iloc について 日本語で整理したものがなさそうなので。 サンプルデータの準備 import pan…