tak0kadaの何でもノート

発声練習、生存確認用。

医学関連は 医学ノート

python

condaを使い始めた

objファイルのプロット用にiglを勧められたがcondaでインストールするように書いてあった。pipでやっているので取りあえず隔離した。GitHub - tak0kada/dconda: conda environment isolated by docker

pythonで.RDataファイルの中身(array)を読み込む

import rpy2.robjects as ro # RDataの中に入っているデータについている名前は事前にRで確認しておく # arrayの次元はhoge$dimで取れないので下記リンクと異なる ro.reval("load(\"test.RData\"); data<-hoge; shape<-dim(hoge)") # https://stackoverflow.…

pythonからシェルスクリプトを呼び出す

一塊になったシェルスクリプトをリファクタリングしている。 ただ呼び出す場合 import subprocess class ShellException(Exception): pass def shell_exec(cmd: str, timeout_s: float = 0) -> None: cmd_org = cmd timeout_s = "" if timeout_s == 0 else "…

doubleしか入っていないCSVをパースするプログラム

要件はメモリ128GBのPCで70GBのCSVをnp.ndarray形式でメモリに乗せること。np.load_txtも一応試したが、エラーでターミナルやブラウザも巻き込んで落ちた。std::ios::seekdirは相対位置指定にしか使えないはずだが、enumのため型変換されて、引数一つだけで…

pybindでC++からpythonを呼び出す実行ファイルを作る

それほど難しくないはずだが、実際バグらせると無限のコンパイルエラーが出て結構つらい。以下はサンプルコード。

import japanize_matplotlib

pip install して import するだけで matplotlib を日本語表示対応させる - Qiita

rdbファイル、rdxファイルとは何ぞや

Rを使った大学院講義に関するコメントを見た。関数の定義(実装)は何かを調べた受講生がいるとのことである。気になって自分も調べてみたところrdbファイルに辿り着いたのでメモ。

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

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

pythonのクラス

メモ(podhmoさんのツイート) pythonのクラス関係のこと知りたいならtypeobject.cを読むのおすすめです。PyBaseObject_Typeがobject、PyType_Typeがtypeということがわかるとある程度普通に読めます。— po (@podhmo) 2017年2月27日

pythonのデコレータ(setter, getter, property, staticmethod, classmethod)

nd2readerのソースコードを見ていたら@staticmethodが散見された。文法を知らなかったので調べた。

vispyで.objファイルをプロットする

OpenGLを使わずに.obj形式のメッシュの可視化を自由にしたい。vispyを試してみたところ、簡単だがOpenGLなしでは自由な表現が出来なかった。開発中で実装が充実している最中なので今後もっと使いやすくなるかも。以下メモ。

PySideについての調べもの

GUIアプリケーションを書こうと思い、PySideについて調べた。

sympyで行列計算

物理数学の教科書を読んでいて文字入りの逆行列の計算が合わなかったのでsympyを使った。sympyがインストールされていなければSymPy Liveが少し遅いが便利。 from sympy import * l, m, s = symbols("λ μ σ") A = Matrix([[l + 2 * m, l, l], [l, l + 2 * m,…

dicomライブラリ選定(その1)

DICOM(Digital Imaging and COmmunication in Medicine)はCTやMRIなどの医療画像ファイルや通信プロトコルの標準規格。ウィキペディアによるとメーカーごとに細かい違い(方言)が多い規格のよう。

Matlabファイルのpythonでの読み込み

.matというmatlabのファイルを拾ってきた。これをpythonで開きたい。 基本的にはscipy.io.loadmatを利用すればいいが、scipy.io.loadmat — SciPy v0.15.1 Reference Guideにあるように、v7.3フォーマットではHDF5のためのライブラリh5pyを利用する必要がある…

「Probabilistic Programming and Bayesian Methods for Hackers」を読んだ - (0 ~ 2章)

MCMCの勉強のためにProbabilistic Programming and Bayesian Methods for Hackersを読んだ。翻訳は終わっていないが、日本語版もある。

ipython notebookの使い方

ipython、ipython notebookの使い方のまとめ(随時更新)。

ディリクレ分布をRとpythonで描いてみる

ディリクレ分布 ベータ分布と同じく式の中にベータ関数が含まれていて、多次元ベータ分布と呼ばれている。ディリクレ分布の表示に使う分布は多次元のベータ関数になる。

2項分布、ベータ分布をRとpythonで描いてみる

2項分布 R $$ P(X=k) = \begin{pmatrix} n\\ k\\ \end{pmatrix} p^{k}(1-p)^{n-k} $$

エストラネスの篩を使って素数判定する

久々にProject Eulerを解いていて素数の判定をしないといけなくなったのでメモ。簡単な問題でも素数の判定が入っていると結構時間がかかるのでエストラネスの篩を使うべき。

虫食い算をpythonで解いてみる

先輩のブログで虫食い算を見つけたので自分もやってみる。 解くのは SEND +) MORE ------- MONEY である。 ループ回すだけの簡単なプログラム from itertools import permutations ans=[] for p in permutations(range(10), 8): if p[0] == 0 or p[4] == 0: …

生存時間解析について -その2(定式化、その他)- 「Think Stats」第2章

生存時間解析の定式化 生存時間解析は興味のあるイベントが起こるまで観察し、その時間について考察を加えるものである。 \(S\)、\(F\)、\(s\)、\(f\) 生存時間解析でまず最初に観察されるのが、ある時間\(t\)以上生存する確率を表す生存関数\(S(t)\)と、\(t…

生存時間解析について -その1(可視化)- 「Think Stats」第2章

RのsurvivalパッケージにあるcolonはStage B/Cの結腸癌患者を対象とした術後補助化学療法の比較臨床試験データ。pythonを使ってこのデータの生存時間解析をやってみる。まずは可視化から。 colon.csvの様子 id,study,rx,sex,age,obstruct,perfor,adhere,node…

降水量について調べてみる - その2 - 「Think Stats」第2章

前回5月と6月前半の降水量について意外な結果が出たので友人に聞いたところ5月と6月前半だと5月の方が雨が少ないと思っているようだったのでその原因を考えたい。 仮説1: 6月後半から梅雨に入るのでそのイメージが強すぎる 仮説2: 実際5月にはひどく雨が降る…

降水量について調べてみる - 「ThinkStats」第1章

どこかからデータを拾ってきて「統計学的に有意」かどうかはともかく計算してみる練習をする。今回は手間だがnumpyなどの関数は使わずに自作する。 Q1: 一年を通じて雨が多い月はいつか Q2: スキー部の活動で例年5月にBBQをするのだが雨が振りやすい曜日、週…

numpy.meanの実装が分からん

ThinkStatsの著者はテキスト中に現れる関数をpythonスクリプトで配布している。ところが実際にはこれらの関数の大半はnumpy,scipyで実装されている。実際どのようにして実装されているか調べたところメインの計算過程がCで実装されているらしいことが分かっ…