2015-10-01から1ヶ月間の記事一覧

dplyr: by + do.call("rbind")するならdoすべし

R

"グループ毎にXXXしたい"という時のXXXの内容が複雑な場合、関数として処理を切り出したくて、以下のように書いてみた。 処理の内容は"Speciesのグループ毎にその最終行のPetal.Lengthの値を取得する"だ。 > process <- function(df){ + df[nrow(df),]$Petal…

C++/C言語の実行時間計測

C++

したい。 関数によってミリ秒だったり秒だったり、OSによって実時間だったりCPU時間だったりする点に注意。 #include <iostream> #include <vector> #include <chrono> #include <time.h> int main() { const int size = 1000 * 1000; //C++11版, ミリ秒単位、実時間ベース std::vector<int> x; auto</int></time.h></chrono></vector></iostream>…

cent 6系に無理やりdevtools-3入れる

gccのバージョンを4.9系にしないとC++の正規表現ライブラリが使えないので、バージョンアップ。そのためにはScientific Linux Cern 6 repositoryを使う。 cd /etc/yum.repos.d wget http://linuxsoft.cern.ch/cern/scl/slc6-scl.repo 本家のレポジトリだと重…

数値→文字列をstd::to_string関数でなんとかする

C++

std::to_string関数、引数1個しかないので調整効かないのがあれだったがなんとかする。substrでいらんところを削って、小数点はXに置換しておいた。 #include <iostream> #include <string> #include <regex> int main() { const double pi = 3.1415926; std::cout << std::to_string(</regex></string></iostream>…

Python3系だと、map関数の返り値もlazyなんだねぇ

また騙された。 In[1]: map(lambda x: x, [1,2,3]) Out[1]: <map at 0x5086d30> In[2]: list(map(lambda z: z, x)) Out[2]: [1, 2, 3] 合わせて騙されたい Python3系だと、zip関数の返り値はlazyなzipオブジェクトなんだねぇ - My Life as a Mock Quant</map>

dplyrで分とか時でgroup_by()したいときにむりやりxtsを使ってみる

dplyrで分とか時でgroup_by()したいときはlubridate::floor_date() - Technically, technophobic. 10分単位でgroup_byして集計したい - 盆栽日記 でやられている話を無理やりxts使ってやってみたらこうなるという話で、関数を用意してなんとかする感じです。…

標準誤差と(ノンパラメトリック)ブートストラップのイケない関係

標準誤差と(ノンパラメトリック)ブートストラップについて、特に理論的なお話はおいておいて、直感的にどういうことなのかということをメモりたい。 それぞれ (回帰分析の係数の)標準誤差: ある確率分布からのサンプルデータに対し推定されたある統計量(ここ…

可視化で理解しない「負の二項分布」

匿名知的集団であるホクソエムの親分が可視化で理解する「負の二項分布」 - ほくそ笑むで言及している負の二項分布ですが、シンクロニシティというか、同じ匿名知的集団ホクソエムなので当たり前と言えば当たり前なのですが、私も負の二項分布、特に負の二項…

層別サンプリングした結果を綺麗に持ちたい

層別サンプリングをするには、samplingパッケージのstrata関数使えばいいんだけど、出力とインターフェイスがイケてないのでラップする。 下記の`stratified_sampling`関数を使えば、各層(クラス)の割合を一定に保ったままサンプリングしてくれる。 library(…