投稿

2月, 2013の投稿を表示しています

へび年でござる

pythonでパースしてました.


print "%d %d", % ( a, b)  #,が最後に改行を出力しないという意味

readline() : 改行も読み込む.改行を削除するにはrstrip関数を.


うーん,まだまだですなぁ


メタゲノムの新境地

Microbial oceanography: Killers of the winners
http://www.nature.com/nature/journal/vaop/ncurrent/full/nature11951.html

SAR11のグループのウィルスが海洋中,またおそらく地球上においてもっとも豊富なウィルスであることがわかった話.

16S rRNAの配列を読むようになり,培養できないウィルスも調べることができるようになった.

"Determining whether SAR11 is a defence specialist or a superior competitor is important."
というわけで,なぜそのように競争に打ち勝っているのかは謎.

だそうです.

シーソー

‘See-saw’ expression of microRNA-198 and FSTL1 from a single transcript in wound healing

http://www.nature.com/nature/journal/vaop/ncurrent/full/nature11890.html


ふだん -> FSTL1の3'UTRからmiR-198が発現
怪我する -> miR-198が抑制,FSTL1が発現

FSTL1はホルモンにbindするようなfollistatin proteinに似たもの.
Follistatinはどの組織でも発現しているようなハウスキーピングのような遺伝子らしい.

オプションを整える

デバッグがいろいろなパターンを必要とするようになってきたので,
オプションでパラメータを指定するように書き換えました.


こちらを参考に

http://www.fireproject.jp/feature/c-language/basic-library/getopt_long.html


boostのライブラリーでも良かったんですけど,ソフトウェアとして公開するならわざわざboost入れてもらうのはちょっと不便ですよね.

なんでgetopt_longで基本的に済ませました.



struct optionが名前と引数を持つかどうかとフラッグ,valをそれぞれ持っていてこれに対してオプションを調べていく.


当てはまるものがあったら0か1が返るので

switch文で分岐してopt_indexに代入されているindexのoptionに対してする動作をちょこちょこするという感じ.

一文字で書けるオプションはgetopt_longの返り値自体にそのcharの値が入っているのでこれもswitch文で分岐.


一文字のオプションが値を取るとき:, 取っても取らなくてもいいとき::が指定できるんですが

-c 10

のような形でスペースを入れてオプション指定すると::指定では値が読み取れない模様.


とりあえず形は完成!( ^ω^ )