静かなる名辞

pythonとプログラミングのこと


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

【python】multiprocessingはアホみたいにメモリ食うよって話

それなりに大きい(それでも数GBとかそんなもん)データをmultiprocessingで処理しようとしたら、メモリが溢れて大変だった。その原因と対処法について書いておく。 multiprocessingはプロセス間でメモリを共有しない。ということは、処理するデータは一々プ…

【python】 immutableを参照渡ししたい

pythonの参照渡しスタイル(を積極的に利用するコーディング)にケチ付ける記事を書いたんだけど、しばらく経ってから「逆にpythonでCみたいなバリバリの参照渡しするにはどうしたら良いんだ?」という疑問を持った。 たとえば、Cで言うところのこういうもの…

【python】メモリ上のオブジェクトを是が非でも圧縮したい

でかいデータをなにも考えずメモリ上に置いておくと、あっという間にメモリが埋まる。 不要なデータはこまめに消して、必要なときに必要なものだけメモリに置くようにすれば大抵なんとかなるのだけど、そうやって整理していくと、ある水準を超えたところで処…

【python】random.shuffleについて

はじめに 標準モジュールのrandom.shuffleは直感と違う挙動をするので、メモしておきます。 参考: 9.6. random — 擬似乱数を生成する — Python 3.6.5 ドキュメント 問題のコード このようなコードです。 import random lst = list(range(10)) shuffled = ra…

【python】混同行列(Confusion matrix)をヒートマップにして描画

pythonでラクして混同行列を描画したい(sklearnとかpandasとかseabornとか使って)という話。 そもそもscikit-learnにはsklearn.metrics.confusion_matrixなるメソッドがあって、混同行列がほしいときはこれ使えば解決じゃん、と思う訳だが、このconfusion_…