tak0kadaの何でもノート

発声練習、生存確認用。

医学関連は 医学ノート

x軸を共有したグラフ、複数のy軸を持つグラフを描く

  • plt.add_axes()を用いた方法よりgridspecを用いた方法の方がレイアウトに気を使わず簡単にグラフを描けた。plt.setp(ax0.get_xticklabels(), visible=False)plt.subplots_adjust(hspace=.0)が一方の軸を非表示にして、さらに2つのグラフをくっつけて描くのに重要である。
  • y軸を複数描くにはtwinx()を用いる
続きを読む

cymemというCython用のメモリ管理ライブラリ

現実逃避にyoutubeを見ていたところ情報業界にまでyoutuberが登場していた(C Programming for Machine Learning (LIVE) - YouTube)。真面目に見ていると中身がペラペラな感じは否めないが話すのは上手であり、ライブコーディング中にバグが取れなくなって詰んでいるのはご愛嬌であった(sizeOfとtypoしていることに気付いていない)。

cythonは以前pythonとRで実装していた研究用のプログラムが遅すぎて辛かったときにお世話になった。プログラム中に出てくるcymemというライブラリが気になったのでメモ。cythonは実質Cなのでmallocしたらfreeしないといけない面倒があるがcymemはRAII(Resource Acquisition Is Initialization)の思想で実装されておりfreeしなくてよいというおしゃれライブラリである。

その他のメモ

ディリクレ過程の定義

確率空間〜確率過程〜ディリクレ過程(とディリクレ混合分布との関連)までの現状の雑な理解をメモしておく。なお当方は集合論、測度論未履修でありかなりいい加減である。

続きを読む

「Inside the C++ Object Model」を読んだ

C++ Primerの著者の一人である S. Lippmanの著書。C++コンパイラの前身?であるcfrontはC++→Cのトランスパイラとして実装されており、cfront2くらいの頃の変換規則を解説しており、多重継承を含む多態性をどのように実装したかに重点が置かれている。研究室に来ていた留学生に勧められてこの本を手に取ったが、C++ Primerと重なる部分が多く感じられ、自分が他人に勧めるかと聞かれるとあまりおすすめしない(中古の割に高い: amazon)。むしろhttps://shaharmike.com/cpp/vtable-part1/~part4、stackoverflowにあったc++ - What is the VTT for a class? - Stack Overflowという記事、日本語ではメモリ配置とキャスト – wizaman's blogなどの記事が分かり良いと感じた。以下は記載内容を適当に省略しつつ発生させたメモの写し(最新の実装との整合性のチェックなどはしていないし、間違いもあっても構わんやろという立場)

続きを読む

英語の勉強リソース(メモ)

学会に参加したが英語が聞き取れなくて困る。日本語でもついていくのが大変な内容だとなおつらい。通訳がいるありがたい勉強会もあるが、同時通訳は専門家ではないので訳が正しいとも限らない。今後を考えると少なくともリスニングの勉強は避けられなさそうである。以下はオンライン辞書などのメモ(リスニングと関係ないが)。

続きを読む

第一種Fredholm方程式

ちょっと前にGhost cytometryという、フローサイトメトリーので細胞分離に細胞の形態を反映できるようにしたという論文がツイッターで話題になっていた。詳細はさておいて、この論文中では$g(t) = \int\int H(x+vt, y) I(x, y)\,dxdy$という積分方程式を解いて細胞を含む画像I(x,y)を復元するステップがある。この積分は一般的には第一種フレドホルム方程式$g(t)=\int _{a}^{b}K(t,s)f(s)\,ds$と呼ばれている。以前数値積分手法メッシュ上の数値積分で調べたように離散化して行列に書き換えるのが一般的なようで、この論文でも同様にしている。行列の形になったあとは圧縮センシングで頑張るとのこと。自分でデモをしようと思ったが面倒になったのでここまで。(細胞の分離自体は行列計算していると間に合わないので生信号をSVMを使って分類するそう)

参考

低体温療法のデータいじり(その2)

低体温療法続き。設定温度からの解離が旧システムと新システムで異なるか検定しようと考えたが、正しい手法を選択できているか怪しい。検定以前に背景の患者因子が揃っていないことに対する注意を払っていないのが大問題だが、そもそもデータが12人分しか手に入らなかった... boxplotで箱ひげ図を描いた後に普通のplot関数を使って生データを○で描きたしている。箱ひげ図にも色を付けている。zorderを指定するとどの要素が上書きされるか指定できる。

追記(2018/7/1): L1 Errorの計算の際に記録体温がNAになってしまっている時間の除外を忘れてしまっていることに気付く

続きを読む