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

texのインストールが面倒だ。とりあえずw32tex入れた。前も入れたのに全然覚えていなかった。

会社で新人は、入社の意気込みを四字熟語で表現させられる。私は、鶏口牛後だったか。しかし、早々にして鶏口牛後は気にしなくなった。(向いていないと思ったからである) 「初心忘れるべからず」といわれるが、初心を忘れたわけではないと思っている。私の中…

pandasでdfがDataFrameだとすると、df.ix[:, i][条件]では更新可能だが、df[条件].ix[:, i]はコピーになり更新されない。

pandasのSeriesのdtypeを変えたいとき、Seriesのapplyを使えばよい。

pandasのグラフで、棒グラフにしたいときは、plot(kind='bar')、散布図にしたいときは、plot(x名称,y名称, kind='scatter')。

Python 数理最適化

6月から12月の間で、Python 数理最適化で11回発表する。 4回は自社開催セミナー。1回はOR学会。4回は大学向け。1回は研究会。1回はPyCon。

pandasのDataFrameで小数点をn桁目までに丸める方法。 applymap(partial(round, ndigits=n))

確率

前にも書いたが、 もう一度書く。 http://blog.livedoor.jp/nwknews/archives/4126636.html ジョーカーを除いたトランプ52枚の中から1枚のカードを抜き出し、表を見ないで箱の中にしまった。 そして、残りのカードから無作為に3枚抜き出したところ、3枚とも…

IPythonNotebookを印刷するには、HTML化してから印刷すればよい。 AnacondaではLatexも印刷できるが、通常のでは出ない。通常のでは、NodeJSをインストールするとLatexも印刷できる。http://nodejs.jp/nodejs.org_ja/docs/v0.10/

PythonORセミナー

PythonORセミナーは大盛況だった。皆様お疲れ様でした。

vcvarsall.bat

pythonで「Unable to find vcvarsall.bat」と出るとき、VC12があるなら、下記で直る。http://plaza.harmonix.ne.jp/~fakira/turedure/set12to9.zip

LOGO

turtleの インストールができなかったので作った。http://nbviewer.ipython.org/gist/Tsutomu-KKE/34fd74fcad9a80b0e04fhttp://plaza.harmonix.ne.jp/~fakira/turedure/Logo.ipynb

IPythonでカレンダーをみたい。 そんなときは、適当なファイルに下記を書いて、そのファイル名を環境変数のPYTHONSTARTUPに指定すればOK。 import IPython.core.getipython, calendar, datetime ip = IPython.core.getipython.get_ipython() def cal_impl(se…

最長しりとりは、 勉強会でやっている。こんな感じ。 from pulp import * with open('cpp11_keywords.csv') as fp: l = [s.rstrip() for s in fp.readlines()] nl = len(l) rl = range(nl) arcs = [] # アークとする aout = [[] for i in rl] # 出るアーク a…

Pythonのプログラムを IPythonで実行すると、結果が変わっていた。 調べると、元々ビルトインのallがnumpyのallに変わっていた。 しかもnumpyのallはジェネレータを受け取ると常にTrueになっている! all([0]) all(i for i in [0]) all([i for i in [0]]) __…

LLの比較。便利。 http://hyperpolyglot.org/scripting__slots__を指定すると、オブジェクトの辞書を作らないので、メモリが節約できる。

私の気に入ったPythonicな書き方。 リスト内包表記:Pythonといったら、まずこれ。 代入が複数可。swapも簡単「a, b = b, a」 比較も複数可。「a != x or b != y」より「(a, b) != (x, y)」がわかりやすい。 範囲判定。「0 反転。「a[::-1]」 上の応用でaが2…

ビンパッキングの問題HARD28を 取ってきて、問題ごとに分割する。 import os, urllib if not os.path.exists('hard28'): os.mkdir('hard28') fp = urllib.urlopen('http://www.math.tu-dresden.de/~capad/TESTS/1DBPP/hard28') while True: fnam = fp.readli…

ipythonを リモートサーバでホスティングする方法のメモ。 下記を実行し、ハッシュをメモ。 import IPython.lib IPython.lib.passwd() DOS画面で「ipython profile create XXX」を実行する。(XXXは適宜) %HOMEPATH%\.ipython\profile_XXX\ipython_notebook_…

matplotlibでxkcd()とやると面白い。

Pythonで数独

Pythonで数独。 定式化して解くのに、入出力合わせて15行だ。 from pulp import * m = LpProblem() v = [[[LpVariable('v%d%d%d' % (i, j, k), cat = LpBinary) for k in range(9)] for j in range(9)] for i in range(9)] with open('pulp-sudoku.txt') as …

Pythonにvirtualenvというのがある。 テストとかに使えるかも。

店舗最適化に関してメモ。 昼食を取る順番。特売データを除く。補充を考慮する。新製品の扱い。季節性の扱い。対象の粒度をどうするか。製品別か分類別か。

Pythonでbool('False')がTrueになったよ。

pandasよさそう。PyConでも聞いたんだけど、よく覚えてない。

今年の抱負は、子供に数理最適化を教える。