Paper Based Drug Design

ドッキングシミュレーション

1271763487

というシュールなネタを思いついた。

参考

畑に肥料投入してゴーヤの発芽

本日は地域の集まりがあったのだけど、道が空いていて思ったよりも早く集会所に付きそうだったので、近所にあるマイアロットメントガーデン(家庭菜園)で肥料を撒いてきた。

明日の早朝を予定してたので良かった。雨でも降って車に肥料積みっぱなしになると、車内が鶏糞臭くなってげんなりするからな。

家に帰ってからは、娘と一緒にゴーヤの種を水に浸すというタスクをこなしてみた。発芽率が低いらしいので多めに投入してみたが、沢山芽が出たらベランダでも育てるかな。

1271677860

今年は唐辛子をわんさか育てて自家製辣油を作ってみたいんだけど反対されるんだろうなぁ。

週末読んでた本

ガベコレのやつとeffective java

ProductName ガベージコレクションのアルゴリズムと実装
中村 成洋,相川 光
秀和システム / ¥ 3,360 ()
通常4~6日以内に発送

ProductName Effective Java 第2版 (The Java Series)
Joshua Bloch
ピアソンエデュケーション / ¥ 3,780 ()
在庫あり。

来週からPRMLの下巻を読み始める予定

ProductName パターン認識と機械学習 下 - ベイズ理論による統計的予測
C. M. ビショップ
シュプリンガー・ジャパン株式会社 / ¥ 8,190 ()
在庫あり。

蕎麦をいただいた

先月結婚した親戚にイタリアンロールと杉錦を送ったら、蕎麦が送られてきた。

1271588033

この細さはヤバイ。茹で時間25秒。かつ流水にさらすと切れるので溜めておいた冷水で泳がす感じで。

僕ももう少し定期的に蕎麦打ちしなきゃな

と思った。

白隠正宗の生酛純米

若干引っかかる感じはあるが、燗つけて呑んだらイケる。チェイサー必須かな。

1271587366

一緒に写せといつもうるさい娘。

1271587373

あと、酒造りの技法ももう少しきちんと理解せなあかんな。

畑を耕した

自分や家族が風邪ひいたり、雨や雪が降ったりとかであっという間に三週間ほど過ぎてしまったが、一日かけて耕した。

1271584312 1271584318

二年目の明日葉は新芽を摘んで天麩羅にして食べた。

あとは、石灰撒いて、肥料入れればいいかな。

シンプソン積分をScalaで

Pythonで書いたシンプソン積分をScalaでも書いてみたのだけどfor yieldで総和を求めるやり方が分からなかったので(RandomAccessSeq.Projectionとかいうのが出た)結局var変数で。

def simpson(f: Double => Double, a: Double, b: Double, n: Int): Double = {
  val h = (b - a)/n
  var sum = 0.0
  for (i <- 0 to n-1) {
    sum = sum + f(a+i*h) + 4.0 * f(a+i*h+h/2) + f(a+i*h+h)
  }
  sum * h / 6
}

def func(x: Double): Double = {
  1.0 / (1 + Math.pow(x,2))
}

実行

scala> simpson(func, 0, 1, 1000)
res24: Double = 0.7853981633974496

Int,Double,Floatとかの型の使い方もいまいちわかってないな。

シンプソン積分

Javaの課題丸投げ

をシンプソン積分で解けってのがあった。

def simpson(f,a,b,n=1000):
    h = float(b-a)/n
    return (h/6)*sum([f(a+i*h)+4*f(a+i*h+h/2)+f(a+i*h+h) for i in range(n)])

if __name__ == "__main__":
    print simpson(lambda x: 1.0/(1+x**2),0,1)

これをjythonで実行すればJavaの課題を解いたことになるのではないか?

ProductName Jythonプログラミング
西尾 泰和
毎日コミュニケーションズ / ¥ 3,150 ()
在庫あり。

PRML4章

4.2にちょっと感動。

ロジスティック回帰で出てくるオッズ比はまぁそんなもんなのかなとかいって天下り的に覚えてたんだけど。

クラス分類の事後確率から考えていくほうが僕にとっては自然だ。

2クラスの分類問題(活性ありなしとか)を考えると事後確率は以下の式で表される。

分子で割ると

但し、αは以下の式で表される。

これはロジスティックシグモイド関数となる。

ProductName パターン認識と機械学習 上 - ベイズ理論による統計的予測
C. M. ビショップ
シュプリンガー・ジャパン株式会社 / ¥ 6,825 ()
在庫あり。

Python使ってpubmedからbibを生成

biopythonで。

#!/usr/bin/env python
# -*- encoding:utf-8 -*-
# kzfm <kerolinq [AT] gmail.com>

def pm2bib(pm):
    author = "; ".join(pm['AU'])
    year = pm['DP'][0:4]
    bib = """@article{PMID:%s,
author = {%s},
title = {%s},
journal = {%s},
year = {%s},
volume = {%s},
number = {%s},
pages = {%s},
}
""" % (pm['PMID'],author,pm['TI'],pm['TA'],year,pm['VI'],pm.get('IP',""),pm['PG'])
    return bib

if __name__ == "__main__":

    from Bio import Entrez, Medline

    Entrez.email = "xxx@gmail.com"
    record = Entrez.read(Entrez.esearch(db="pubmed",term="biopython"))
    idlist = record["IdList"]
    records = Medline.parse(Entrez.efetch(db="pubmed",id=idlist,rettype="medline",retmode="text"))

    for record in records:
        print pm2bib(record)

適当に用意したtex

\documentclass{jarticle}
\begin{document}
\bibliographystyle{plain}
「お互いの犬\cite{PMID:20015970}の写真\cite{PMID:19811691}を撮り合い、帰ったらその写真\cite{PMID:19773334}
を自分のブログ\cite{PMID:19304878}にUPして紹介\cite{PMID:18606172}
し、お互いのブログにお礼コメント\cite{PMID:16403221}をするというのが暗黙のルール\cite{PMID:16377612}です。」

X06HT予約しにいったら、携帯電話が妻名義\cite{PMID:14871861}だったので予約出来なかった。
あと名義変更に一日かかるからあと二回いかないと予約出来ない\cite{PMID:14630660}
という衝撃の事実を聞かされた。多分、アンドロイドへの何か\cite{PMID:12230038}
が試されているんだろう。

\bibliography{test}
\end{document}

できたpdf