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

DeedleとAccord.NETを使ってサポートベクトルマシン(Support Vector Machine, SVM)を実行する

F#

意外とサクっと出来るんじゃないかと思ったが、そうもいかなかった。とりあえずの元データはirisでこれは適当にcsv形式で保存しておいた。とりあえずCross Validation&可視化はなしで予測値をはじき出すまでで結構苦労したのでまとめる。使っているのはAcco…

F#でスクリプト書くときは、とりあえずこれをスクリプトの頭にいれておけ

F#

これがないとライブラリの読み込みがメンドイんだ… System.Environment.CurrentDirectory <- __SOURCE_DIRECTORY__ 内容はカレントディレクトリをスクリプトのフォルダへと移動するって話。

ggplot2をアニメーション(animation)させる際には、printするのを忘れないこと

R

意外とハマるじゃないかポイントで、30分弱無駄にした。とりあえずggplot2とanimationパッケージ入れましょう。 library(animation) library(ggplot2) あと、Winユーザは適当にImageMagickへのパスを通す必要がある。 ani.options(convert='C:/Program Files…

二次元ヒートカーネル(熱核)の時間発展の可視化

二次元ヒートカーネルなんていうと難しく聞こえるけど、要するにラプラス方程式の解である、時間発展するガウシアンの可視化です。物理系だと微分方程式の基本解という意味で、熱核じゃなくてグリーン関数って呼んでるものと等価(なはず)。 熱核 - Wikiped…

各国のGDPに占める製造業の割合を再現可能な形で可視化する

R

各国のGDPに占める製造業の割合を再現可能な形で可視化する 製造業を愛する俺は 「日本の〜製造業は衰退の〜一途であ〜る!」 「ものづくり大国〜日本は変革の時ダーーーー」 ってな話をニュースやらで読み聞きした際、レポートや見解を出してくる所謂有識者…

RFinanceJパッケージで振り返る日本の金融マーケット2014

R

この記事は R Advent Calendar 2014 - Qiita の21日めの記事です。詳しくは RPubs - RFinanceJパッケージで振り返る日本の金融マーケット2014 をご覧ください、そして今年の相場で儲けた人は、ちゃんと私に申告して奢るようにしてください。 また、上記のド…

dygraphsサイコォォォォオオオオオオオオオオオオオ!!!

R

仕事が早いことで有名なRStudioがまた新しいライブラリを出したようだ htmlwidgets: JavaScript data visualization for R | RStudio Blog ここで紹介されているhtmlwidgets for Rパッケージは、javascriptの可視化系ライブラリのRへのラッパーとなっている…

kd木を作って、k次元空間上の点間の最近傍構造を抽出したい

R

kd木*1という、k次元のユークリッド空間にある点の最近傍探索を分類する空間分割データ構造がある。学問分野では最近傍探索ってのに相当するそうだ。これをRでやりたい。 最近傍探索 - Wikipedia 調べた所、以下3つのパッケージが見つかった。 CRAN - Packa…

FsLab JournalでReproducible Research(レポート)を簡単に作りたい

F#

はじめに この記事は F# Advent Calendar 2014 - connpass の17日目の記事です。前日はpocketberserkerさんのFsAttoparsecについて - pocketberserkerの爆走でした。今日は最近流行り?のリプロデューシブル・リサーチというか、クヌースのいう文芸的プログ…

今日も1日がんばるぞい!

F#

こういう話がある 今日も1日がんばるぞい! これをF#でやりたい。 open System let dic = [ [|"今日"; "ぞい"|]; [|"も"|]; [|"1"; "ぞい"|]; [|"日"; "ぞい"|]; [|"がん"; "ぞい"|]; [|"ばる"; "ぞい"|]; [|"ぞい!"|]] let rnd = new System.Random() let …

ImageMagickで画像ファイルのトリミングをしたい

F#

ImageMagickで、結構な数の画像をトリミングしようと思ってF#でスクリプトを書いた。F#の文字列内で"(ダブルクオテーション)を使うためには@" "" "みたいに @を使う "(ダブルクオテーション)は重ねて書く ってのに気がつかなくてハマったのでメモ。 //imagem…

R Advent Calendar 2014 2日目「アリさん(@AriLamstein)とオレ物語」

R

はじめに この記事はR Advent Calendar 2014の2日目の記事です。Rの話というより、Japan.Rに向けた前フリで、「登壇者の1人であるアリさん(@AriLamstein)は何者で、何がどうしてJapa.Rに参加されたのか?」というお話です。R Advent Calendar 2014に参加して…

二次元カーネル密度推定

R

Rで二次元カーネル密度推定してみる。別に2次元が好きなわけではなく、これはたまたまだ。1次元の場合は、Rにデフォルトで組み込まれているstatsパッケージのdensity関数を使えばヨロシ。 デフォルトで入ってくるパッケージの調べ方とインストール MASSパッ…

rvestでリアルタイムな為替レートを取得したい

R

USD/JPYレート、こんなんで取得OKでござんした。html関数以下を再実行すれば直近のレートに置き換わる。 #パッケージ読み込み&html取得 library(rvest) html <- html("http://info.finance.yahoo.co.jp/fx/detail/?code=USDJPY=FX") #BID, ASK取得 bid <- h…

RubyからRを叩きたい

はじめに F#に魂を売り渡したとしていても、そういうRuby欲、あると思います。ざっと調べたところ、RinRubyなるライブラリを使うのがよさそうだった。ただ2年前の情報なので、これが一番いいのかは自信あまりない。参考リンクにあるように、愛ちゃんパイセン…

IfSharp (notebook)サイコオオオオオオオオオオオオオオオオオオオオオオオオオ

F#

はじめに IPython notebook、昔々触ったときは「コンセプトは良いけどまだまだですナ。ハハハ」みたいな感じで流してたのだが、今ここでちゃんと触ってみようとおもったけれども、最近scikit-learnを必要に応じて触るくらいでpythonあまりいじってないし、俺…

円内に一様分布する乱数を生成する時は、俺、絶対忘れないよヤコビアンのこと

頭出し ある半径Rの円内に一様分布する乱数を生成する時には注意しないといけないことがありますよというお話。所謂「一度はやってしまうミス」系でもある。この手の話は円に限ったわけではなく、円の高次元版である球、あるいは超球(次元>3)、あるいは任意…

F#でプレゼンテーション/スライドを作りたい

F#

ぼけーっとFSharpのハッシュタグを眺めていたらFsRevealというプロジェクトがあることを知った。Introducing FsReveal – Beautiful, version controlled presentations in the browser http://t.co/fJnjsYHWkb #fsharp— F# Reddit (@reddit_fsharp) 2014, 11…

geom_pathがまだよくわからない

R

geom_pathというか、ggplot2をよく理解できていないメモ。 RPubs - geom_pathのメモ

金融商品を記述するためのDSL(Domain Specific Language, ドメイン特化言語)っぽいもんをC++でやってみた(※元ネタ『Composing Contracts: An Adventure in Financial Engineering』)

はじめに の6章「金融取引契約の書き方」をC++でオレオレ実装するとどうなるのか?って話をしましょうという話を某氏としたのでやってみんとす。C++辛い、F#とかがよかった。 これは一体何? 金融商品を記述するためのDSL(Domain Specific Language, ドメイ…

knitrBootstrapパッケージを使ってデコったhtmlファイルをRPubsにアップしたい

R

Rcppパッケージ周りの使い方をすぐ忘れるのでいい加減まとめようと思っていろいろ書いていたファイル(Rmd)をRpubsにアップしようとしたら結構嵌ったんでメモ。アップした結果は以下 RPubs - Rcpp memo 以下の人たちがなぜ嵌ってないのかは、パッケージ & R S…

神・羽鳥が作りしパフォーマンス計測パッケージlineprofでパフォーマンス計測

R

神・羽鳥が書いた聖書 を読んでる時に気がついた話。みんなRでパフォーマンス図る時はproc.time関数なりsystem.time関数とか使ってるだろうけど、もっと細かいパフォーマンス見たい時は、神・羽鳥が作ったlineprofパッケージ使ったらいいんじゃないかという…

指定個数だけあるデータフレーム(data.frame)を要素にもつリスト(list)を作る関数

R

完全俺俺スニペットだし、本当にやりたいことはこの先にあるんだが、とりあえずのメモ。要するに以下のように動くrep関数 > rep(123, 4) [1] 123 123 123 123 のデータフレーム版が欲しかったんだ。↓関数ご本尊。 make_list <- function(df, count){ .make_l…

逆ガンマ分布(事後分布)〜正規分布(尤度関数)×逆ガンマ分布(事前分布)

一般に、ある確率測度の下で、逆ガンマ分布に従う確率変数の確率密度関数は である。この時、確率変数を分散に持つ正規分布を尤度関数とし、逆ガンマ分布を事前分布とすると、 確率変数の事後確率密度関数は 従って、 となり、のパラメーターが決定され、か…

Rにおける日付(Date型)のデフォルトの原点は1970年1月1日だぞっと

R

前振り 数値を日付に変換する時には基準となる日付が必要なわけですが、Rの場合、デフォルトだと「1970年1月1日」になってるようだ。 この話のモチベーションとしては別に俺的には日付のまま処理したいんだけど、lapplyの結果を行列にしたりデータフレームに…

正規分布(事後分布)〜正規分布(尤度関数)×正規分布(事前分布)

一般に、ある確率測度の下で、正規分布に従う確率変数に対し、 尤度関数: 事前分布: であることを仮定したとき、事前分布が共役事前分布となっていることから、事後分布も正規分布となり、 が成立する。ただしここで、は平均, 分散を持つ正規分布を表す。…

foreachパッケージで、並列化する/しないを綺麗に書き分ける

R

foreachパッケージで並列化する時、現在の"環境"にない変数・関数は、明示的に.export引数にて指定しなければならない - My Life as a Mock Quant で、「これからRで並列化するならforeachパッケージ使うだろ」という話を書いたが、その続き的な?もの。 並…

foreachパッケージで並列化する時、現在の"環境"にない変数・関数は、明示的に.export引数にて指定しなければならない

R

foreachパッケージについて 遅い遅いと巷で噂のR君も並列化すればそれなりにパフォーマンスが期待できるわけです。Rにおいてどうやって並列化をするのかというと、foreachパッケージ&関数で並列化するのが手っ取り早くて、これはざっくりでいうと foreach(i…

Rはクラス(class)がイケてないので、毎度クロージャ(Closure, 閉包)でごまかす俺が酷い目にあった件

R

Rのクラスはあまりイケてないというか、 Rのクラス周りが混沌としているので誰かまとめてください - 盆栽日記 にも記載があるように、S3/S4/S5/S6という4つの書き方が乱立している状況で、どれを使ったらいいんじゃい状態なので、自分でコードを書かなきゃい…

数値シミュレーションの結果をlistで受けてからのrbind_allで捌いて可視化するのが俺のデファクトスタンダード

R

例えば、二次元のランダムウォークシミュレーションの結果を返す関数を作る。 randomwalk2D <- function(){cbind(x=cumsum(rnorm(100)), y=cumsum(rnorm(100)))} これはまぁ、二次元平面上にプロットすると原点(0,0)を始点とする二次元のランダムウォークに…