パスワードを忘れた? アカウント作成

kahoさんのトモダチの日記みんなの日記も見てね。 あなたのタレコミがスラッシュドットを支えます。さぁ、タレこめ!

10748311 journal
日記

kahoの日記: STAP細胞の非実在について#5 74

日記 by kaho

とりあえず論文が撤回の方向に進んでいるようでいくらか安心しました.
真相の解明までいくか分かりませんので,10%程度の安心ですが.
誤解を受けないように明記しておきますと,今日までこの解析を行うにあたって私は一切の圧力も感じませんでしたし,協力してくださった皆さんのおかげで大変助けられました.頭に血が上った上に何の制限もなかったおかげで,周りが見えなくなって大失敗もしましたが.
一段落したことで今回がSTAPについて書く最後になるかと思います.今回の大本のメディアからも問い合わせを受け,本名を出しても構わないと返答しましたので,これからはコメントをするとしても公式な手続きを踏んだものになるかと思います.

”input”の解析でまだここに書いていなかったものとして,CNV(copy number variation)解析を最後に書き留めます.
これはChIP-seqの”input”データという限られた配列でどこまでできるか自信がなかったので,様々な計算方法を試し,基準となりそうなデータを探したりその著者に問い合わせたりして時間がかかる作業でした.
CNVというのは,ゲノム中で生じるコピー数の変化のことで,単純な繰り返し配列が細胞分裂の際に伸びたり縮んだりする現象のことを言います.個体間の差を見る方法として,SNP (single nucleotide polymorphism)がよく知られていますが,それよりもはるかに変化しやすく,同じ個体の細胞でも違いがみられます.

STAP細胞の由来を調べるために,当初私はSNPの違いを見ようとしたのですが,変異が少ないために定量的な評価はできませんでした.SNPがあるように見えてもその配列が正しいかを確定させるためには同じ場所を何回も読んでいる必要があるのですが,”input”はそこまでの量の配列はないので,個々の細胞の配列を決めることも難しいのです.
しかし,ゲノム上に配置された配列をよく見ていくと,多くの場所で配列が多数積み重なっている場所があります.また,CD45+細胞(Oct4-GFP)とSTAP/STAP-SC/ESで違いがあることが分かり,これはCNVを観察しているのだろうと予想しました.ChIP-seqのリード数でもCNVが評価できるのだとしたら,個々の細胞の近縁関係が分かるかもしれないと考え,ここから情報を得るためにいくつかの試行錯誤を行いました.

結果として,以下の単純(≒ロバスト)な方法でうまく行きそうだという感触を得ましたので,非常にテクニカルになりますが,再現実験を試みる人のために記します.

・染色体を50, 100, あるいは250塩基ごとのウィンドウに分割する.
・2つのゲノム間で,同じウィンドウ間のリード数を数える.
・ウィンドウ内のリード数をカウントし,性別が異なってもよいよう,各染色体ごとの総リード数を用いてオッズ比を算出する.また,性染色体は計算から除外する.
・オッズ比の95%信頼区間を計算する.
・オッズ比が1より大きい場合は信頼区間の下限値が2より大きいもの,オッズ比が1未満の場合は信頼区間の上限値が0.5未満のものを「CNVの差がある」区間としてカウントする.
・ただし近接している領域は結合させて1つと数える.
・このCNVの違いを2つの細胞の距離として評価する.

この計算で一定の数字が得られることは分かりますが,そこで得られた距離をどう解釈するかは,別の基準がなければなりません.今回,おおよそリード数が同じ(数割少ない)で,世代をまたいだり同一個体から別組織を得たりしたデータを取得しているXiao(3/11 10:13訂正)らの論文(Cell, 2012, GSE36114)GSE36294(Chang et al., Cell Res. 2014)(3/11 13:11再訂正)のデータを用いました.著者らにコンタクトを取り(ついでにデータベースから論文へのリンクが貼られていないことを修正してもらい),個々の細胞の由来を聞いた所,1-MEF-iPSからマウスを作成し,2-APC, 2-HPCという細胞をそのマウスから得たことを確認しました.
このデータを使うことで,最初の幹細胞と分化した細胞の変異,体細胞ごとのCNVの違いが分かります.

今回,目立ったCNVが100塩基未満だったこと,50塩基では統計上サンプルが少なくて評価ができにくかったことから,ウィンドウサイズが100塩基の時の計算結果を示します.
結果を示しますと,以下のようになります.どの細胞の組み合わせでもCNVが観察出来ました.

          2-HPC*   2-HPC   2-APC
1-MEF_iPS     76     141     255
2-APC        151     160
2-HPC         16
2-HPC*

次に,この手法をSTAP論文のために公開されたデータに使います.この結果は以下の通りになりました.

        ESC STAP-SC  STAP  FI-SC    TSC
CD45+   245    270    277    182    669
TSC     420    459    360    371
FI-SC    17      6     17
STAP      0      2
STAP-SC   6
ESC

これまで見てきた通り,CD45+細胞はSTAP/STAP幹細胞/ES細胞とは由来が異なることがこの解析でも分かります.
また,ES細胞とSTAP細胞はCNVに差がなく,ほぼ同一であることが示されました.この近さは慎重な実験をするために,STAPを抽出したマウスからES細胞を作成したとしても説明がつかないように思われます.

どのような原因でこういった結果になったかは特に論評しません.
ChIP-seq実験をするときにサンプルを間違えて,同じ細胞を4回使ってしまったのかもしれません.
著者らが再現実験をするときは,慎重に実験をしていただきたいと思います.

10743640 journal
日記

kahoの日記: STAP細胞の非実在について#4 73

日記 by kaho

※以下のエントリは完全に間違いでした.間違いをしたことを隠さないため削除しませんが,主張は過ちであることを注記しておきます.

ここまで私はChIP-seqの”input”を元に解析を行ってきました.
このデータはまだいくつかのことを教えてくれますが,内容がほぼ学術論文のようになってしまうので,遺伝子発現について先に見たいと思います.
今回彼らが公開したNGSデータはChIP-seqとRNA-seqの実験のものです.このうち遺伝子発現を見るのはRNA-seqであり,いくつかの図を示しています.このRNA-seqデータは調べたい内容に対して不適当なほど長い配列を読んでおり,扱いづらい(計算時間がかかる)のですが,今知りたいのは大まかなアウトラインなので先頭の50塩基だけを使った解析を行いました.NGSデータに馴染みのない方には何のことかわからないと思いますが,データの一部を取り出して遺伝子発現について大まかな解析をしてみた,という意味です.

公開データを見ますと,2つの別々の試薬を使ってでRNA-seqを行っていることが分かります.一つはTruSeq,もう一つはSMARTer Ultra Lowです.論文の図に使われているのはTruSeqの方で,SMARTerのデータは公開されているものの論文中では使われていません.
これらはどちらがよいというわけではありませんが,試薬ごとに特性があるので比較する場合は同じ試薬を使った実験同士を比較することになります.TruSeqとSMARTerの違いは,後者は抽出できるmRNA量(≒細胞数)が非常に少ない場合にも対応している,とカタログ上うたっていることです.私の経験でも少量のサンプルしかとれない細胞ではSMARTerの方が適していると思います.

まず彼らの解析結果が再現できるかを確認してみました.TruSeqを使ったデータからそれぞれのサンプルの類似性(ピアソンの相関係数を用いました)を計算し,クラスタリングを行います.RNA-seqデータは細胞の種類ごとに2度ずつ行っており,原論文では細胞の種類ごとに分けていますが,ここではそれぞれ別にして調べました.その結果,同じ細胞のデータはそれぞれ非常に近く,そして論文と同じようにSTAPはCD45+と幹細胞の中間地点に配置され,STAP幹細胞はES細胞に近い位置に配置されました.最初に述べたように大まかな解析ですが,間違った結果を導くほどではないようです.
ちなみに,データベース上の表記では同じサンプルにSTAPと書かれている場合と酸で処理したCD45+細胞と書かれている場合が混在していて正確な条件が分かりません.図の見やすさも考えて,今回はSTAPに統一しています.

次に,論文で使われていないSMARTerのデータを同じく解析してみます.
結果はTruSeqのものと大きな違いがありました.STAPはどちらも桑実胚よりもESに近くなっています.
これらの類似性は驚くほどです.STAPは分裂しない細胞で,得られる細胞は何種類もの遺伝型をもったものの混合であるというのに,2度の実験の両方共がES細胞に近い(相関係数でいうと0.85程度で,STAP同士と同じか上)という結果です.

RNA-seqのクラスタリング図

これは科学的に大きな発見ではないでしょうか.著者らはSTAP細胞からSTAP幹細胞を誘導(?選別?)してその多能性を検証していますが,STAP細胞そのものも,ほぼESのような性質を持っていたのです.酸で処理しただけでよいのだとすればよほど効率も上がりますし,論文の価値も高かったはずです.
著者らはSTAP幹細胞の詳細な作成プロトコルを提出するより,この実験の時のSTAP細胞の作成プロトコルを追求する方がよかったのではないでしょうか.少なくとも,これほどの有望なデータが得られたのに論文で触れないというのは解せません.2度のSTAPの遺伝子発現が2度ともがESに近かったのに.

なぜ彼らはこのデータを使わなかったのでしょうか.
先に述べたようにSMARTerの方が細胞が少ない場合に適しており,増殖能の低いSTAPにはこちらの方が適していると考えられます.なのに,細胞数が必要なTruSeqで別のデータをとりなおし,そちらだけを出版したのは何故でしょうか.

合理的な説明はいくつも考えられます.彼らに問いただしても答えは用意されているでしょう.
従ってこの結果は決定的な証拠にはなりません.ただし,私の仮説には合致するものでした.

※追記
AC氏からの指摘によりExtended Fig 6dで使用されていることに気が付きました.
大変申し訳ありません.再解析と修正を行います.

10741364 journal
日記

kahoの日記: STAP細胞の非実在について#3 75

日記 by kaho

残念ながら政治的には勝てそうにありません.
しかしここを読んだ人に誤解していただきたくないのは,私が孤独な戦いをしているというわけではないということです.むしろ話をした方々は全て私に賛同し応援してもらっており,数の上では私の方が圧倒的なマジョリティだと思っています.
科学雑誌の論文は著者全員の同意がないと著者側からの撤回はできませんので,一人でも意見を曲げない人がいれば強制的に撤回させる方法はないのが現在の制度であるのです.

ところでSTAP幹細胞ではTCRの再構成がみられないが,STAPでは見られる,という現在のストーリーですが,前回のTCR領域を見て頂ければ分かりますが,酸で刺激した段階でゲノム再構成はほぼ観察されなくなっています.わずかに含まれるかもしれませんが,殆どの細胞は再構成の起きていない細胞になるはずです.この点,修正を出すなら著者らは説明する必要があるでしょう.STAP幹細胞だけではなく,Oct4-GFPで選別したSTAP細胞でも再構成の有無を調べてもらえればと思います.NGSデータと矛盾しないのなら,恐らく現在出版されているパターンとは異なるものになるでしょうから.

次に,前回のおまけの答え合わせですが,酸による刺激によって性転換が起こるという世紀の大発見というわけではなく,一つの実験として行っているのに,遺伝的なバックグラウンドが揃っていないことを示しています.
前回よりも細かい図でOct4の周辺を見てみるとよく分かります.
Oct4 surrounding sequence

つまり,CD45+細胞だけがOct4-GFPのトランスジェニックマウスで,それ以外は違う細胞を使っています.
調べた所CD45+以外の細胞にもGFPの配列はありました.従って,これらは論文に使われている,恒常的に蛍光を発するCAG-GFP細胞であろうと考えられます.
酸で刺激した細胞が元のCD45+細胞とは違うことを示すための実験なのに,明らかにDNAが異なる細胞を持ってくるというのは実験として大変稚拙で,STAP細胞とCD45+細胞に違いが観察されてもその原因が酸の処理が原因なのか遺伝子の違いによるのかが分かりません.名誉なことに引用していただいた慶応大学の吉村先生ならば「ネガコンとポジコンをしっかりとるのは研究者の基本だ」と叱られるところだと思います.

何故彼らは性別もDNAも違う細胞を使ったのでしょう.
実験というのはお金も時間もかかるものですから,研究の上でやむを得ずそうすることは無いわけではありません.例えばSTAP幹細胞作成の成功率が非常に低いから,わずかにとれたサンプルでしか観察できない,というような場合です.
しかし今回の論文では,CD45+細胞を集めてそれにストレスを与えて,更に数日特殊な環境において,という過程の中で,最も簡単に揃えられるのは最初のCD45+細胞です.その最もコストの安い細胞を,わざわざ他の細胞とは違うものにした上でで実験をして,CD45+細胞とそれを刺激したものは違う,と主張しているのです.性別もDNAも違うのだから,違いがあるのは当たり前なのに.
ここには私の一つの推測がありますが,残念ながら確実な証拠は時間が足りずに掴めませんでした.
政治的な敗北は単なる権力的な弱さゆえでなく,私の力の及ばなかったせいでもあります.

10739442 journal
日記

kahoの日記: STAP細胞の非実在について#2 78

日記 by kaho

前回の日記は思いの外反響があり,驚いています.
察していただいた方もいらっしゃった通り,私は件の論文に直接関わる立場ではないのですが,研究所の外から見れば「中の人」になります.
内部では実名でこのような活動をしており,隠れているつもりはありません.内部でどうしても解決できなかった場合は外へ向けて情報を出すでしょうが,それまではできるだけ内部での解決を目指しています.
その目的は迅速な論文の撤回とできる限りの真相の解明がなされることであり,また動機は科学への信頼,研究所への信頼の棄損を許せないことが半分,この状態を曖昧にしておくことで私個人の研究活動も制限を受けかねないのでそれを防ぎたいという私利私欲も半分の動機となります.

科学的な事実を争う立場としては私は間違っていないという自信がありますが,政治的に勝利できるかどうかは全く分かりません.
更にいくつかの証拠をここに書こうと思いましたが,今回の論文の著者らに手の内を知らせずに2の矢3の矢を放たなければならない状況になってきましたので,解析結果をここに書くのは彼らにそれらを突きつけてからという順番になりそうです.
前回の日記で述べた"input"の比較データについては下記のアドレスから閲覧できるようにしました.ここには図を貼れないので,UCSC Genome Browserの力を借ります.
同じデータは公開データを使うことでどなたにも作成できるはずです.

TCR-beta
http://genome.ucsc.edu/cgi-bin/hgTracks?hgS_doOtherUser=submit&hgS_otherUserName=stopstap&hgS_otherUserSessionName=TCR%20beta%20rearrangement%20test

TCR-alpha
http://genome.ucsc.edu/cgi-bin/hgTracks?hgS_doOtherUser=submit&hgS_otherUserName=stopstap&hgS_otherUserSessionName=TCR%20alpha%20rearrangement%20test

また,おまけをつけておきます.これが何を意味するかはいずれわかると思います.
chrX
http://genome.ucsc.edu/cgi-bin/hgTracks?hgS_doOtherUser=submit&hgS_otherUserName=stopstap&hgS_otherUserSessionName=Appendix

10737683 journal
日記

kahoの日記: STAP細胞の非実在について 64

日記 by kaho

なめてますね,これ.
何と言って,理研の対応です.

STAP論文についての手技解説の発表,だそうですが,これは無意味です.
なぜなら,STAP細胞など存在しないから.
間違った書き方をしたとか論文制作の作法のことではありません.「存在しない」のです.
私は証拠も提供しました.しかし,受け入れられなかったようです.

この論文は画像の捏造や文章のコピペ,結果の解釈の間違いなど多数の指摘がされています.
それらは大問題で,問題の大きさとしてはこれだけで論文の撤回があってしかるべきです.が,私はそこはあえてここでは語りません.他の場所で語られているからということもありますが,もっと本質的なこと,つまり「STAP細胞は存在しない」ことを問題にしたいからです.

どうしてSTAP細胞が存在しないといえるのか?
私はこの論文のインサイダーではありません.従って誰がどのように間違いを犯したかどのような意図を持っていたかといったことは分かりません.
しかし,彼らが公開しているデータから彼らの捏造,少なくとも完全な誤りは証明できます.
彼らはそうとは知らず,自分たちの捏造を世界に公開しているのです.

どのデータから?
それは,次世代シーケンサーの生データからです.
今回の論文(2報)のうち片方ではChIP-seqという実験を行っています.そして(本当は論文の公開時にするべきですが)しばらくした後でこの時のデータを誰にでも使えるように公開しました.実験の詳細は省きますが,この実験では対照実験として”input”と称した染色体配列そのものを読んでいます.
これは細胞のDNAの配列がほぼランダムに断片化されて記録されているので,丁寧に見ていくとその細胞がどのような染色体構造を持っているのかが分かります.

彼らの論文ではT細胞を酸で刺激することで細胞の初期化を行ったとしています.
初期化された細胞が,例えばMuse細胞のように,元からあった幹細胞を選別しただけでないことの証拠として,論文ではTCRのゲノム再構成を証拠として提出しています.TCRとはT細胞レセプターのことで,一つの細胞が一つの抗体だけをつくるように切り貼りされるので,T細胞とそれ以外では全く長さが異なってしまうため,ここを見れば一度T細胞になったものかどうかが分かるからです.
奇妙なことにこの再構成がSTAP幹細胞からつくられたマウスでも観察されるかは論文に記載されていません.これを出せ,という意見はかなり早くからありましたが,これまで出していませんでした.

私はこのまっとうな意見に対して「調べる手段はあるよ」と思っていました.それが先程述べた”input”です.
このデータは50塩基ほどの断片なので,再構成されたDNA配列全体は分かりません.しかし,切り取られた配列がなくなるため,「再構成が起きたかどうか」は分かります.
ゲノム再構成とは染色体のある部分が編集されて短くなるので,DNA配列をみるとその部分がなくなってしまいます.
もしSTAP細胞がT細胞からつくりだされたとすると,ES細胞,CD45+細胞,STAP細胞で比較するとES細胞に比べてCD45+細胞とSTAP細胞ではTCR領域のDNAが減っていることが期待されます.
この解析を始めた時,私は軽い気持ちで,実験生物学をやっている人が見つけられないものでも自分ならすぐに分かるという軽い優越感を得ようとしていました.
しかし,結果は驚くべきものでした.
まず,CD45+s細胞はTCRの再構成がわずかに見られます.しかしSTAP細胞,そして低pH環境下においたCD45+細胞では再構成は観察されなかったのです.
これが私の解析が悪いせいなのかと思い,全く異なるT細胞のデータを使って調べましたが,他のデータでは確実にTCR再構成を観察することが出来ました.つまり,STAP細胞はT細胞由来ではなかったのです.
この段階で私は,この論文におけるT細胞の選別が非常に悪く,幹細胞が混ざっていたのではないかと推測しました.しかしそれは甘かったのです.
低pHで処理するとT細胞はほとんどいなくなります.ではなぜSTAP幹細胞ではTCR再構成が起きていることを証拠として提出しているのでしょうか.これは,実験の手技が悪いとか,ミスであるとか,そういう話ではありません.

それもこの”input”の比較によって明らかになります.
その内容は更に長く専門的になるので,また日を改めて書こうかと思います.

344060 journal

kahoの日記: Pogoplug software

日記 by kaho

Pogoplugには興味があったが購入までは至らなかった.(ビックカメラで売っていなかったので)
しかし最近Pogoplug Softwareが公開され,インストールしたところ大変よい印象を持ったので特に必要はないかもしれないがお布施としてPremiumアカウントの購入を行った.
なぜPogoplugを検討したかというとiDiskが来年までしか使えなくなったからだ.
解析データなどはいくつもためておくと数GになるのでDropboxなどのサービスは無料アカウントの範囲で使うことはできない.また,ダウンロードが遅い.
これまではiDiskで共有してファイルを送っていたのだが,iCloudへの移行にともなってiDiskサービスは使えなくなるわけで,代替手段が必要だった.
年会費が必要なサービスは手が出しにくいのでどうしたらよいかと思っていたが,Pogoplug Softwareが問題をほとんど解決してくれた.
共有URLは非常に長く,メールに張り付けると相手がダウンロードできないことがあるので(マイナス記号で改行される)URL短縮サービスを併用しなければならないが,ファイルがローカルにあるので転送は非常に高速だ.共同研究者とお互いファイルサーバーにログインする面倒もない.

MacではPPCに対応しているのもよいし,一度ライセンスを購入すると何台で使用してもWnidows/Macでも流用可能だから$29は高く感じられない.
プレミアムでは動画のストリーミングができるので自宅でPS3相手に試したところ,PS3 Media Serverよりもはるかに容易かつ快適に使用できた.
現在少し問題なのはDLNAのON/OFFがmy.pogoplug.comを通じてでないとできないことで,しかもすぐに見えなくなるので再起動が必要なことだ.
フォーラムではまだスタンドアロンのPogoplugについての話題がほとんどなので同様の問題点は見つからなかったがこの安定性が改善されると嬉しい.

Linux版のPogoplugサーバが使えるなら自宅に省電力のサーバーをおいてiOS機のディスクを空にしたいのだが,現在Windows/Macのみとのこと.
Mac mini (Lion server)が欲しくなる.

203538 journal

kahoの日記: 現世代シーケンサー雑感

日記 by kaho

後でもう少しまとめるつもりだが、覚え書き程度に。
2010年になって、第3世代と言われるシーケンサー(DNA解読機)の動向にも以前よりいろいろと変化がある。
現在の状況を簡単に言えばチャンピオンであるIlluminaに対してABが巻き返しを図り、Helicosが局地戦を仕掛けていると言えるだろうか。
Illuminaは最新のHiSeq2000でGenome Analyzerで築いた基盤をより強化している。余談だが成功したシリーズの名前を受け継いでGA IIIといった名称にしなかったのは、この分野が単なるゲノム解読にとどまらずに様々な応用分野を持つようになったためだと思われる。
これに対してApplied BiosystemsはSOLiD 4の導入でこれに対抗しようとしている。特にABが強調するのが解読した配列の精度が高いということで、疾患解析など精度が要求される分野での優位性を強調することで足場を築こうとしている。
また、Helicosはその手法(対象とする配列を増幅しない1分子解読)のため、エラーは原理的に多いのだが、PCRによる増幅を行わないためバイアスが入る余地が少なく、定量性が高いことを強調し、mRNAの観測などでの利点を主張することで生き残りを図っている。
また、pyrosequencingの先駆けであった454 Life Sciencesは、他の手法が20-70塩基の短い配列しか出力できないことに対して200-400塩基単位での解読ができることから、そのような性能が必要な分野では用いられるものの、他の陣営との正面切った競争はできない状況にある。

これとは別に、まだ製品となっていないPacBioのシーケンサーは、原理は誰もが感心するもののモノがいつまでもでてこない。また、全く違う原理を使ったnanoporeによるシーケンサーは、多くの人に応援されているにもかかわらず当初の発想にこだわりすぎて製品化に必要なブレークスルーが果たせないまま危うい状況にある。

個人的な感想を言えば、このままではIlluminaの独走状態が加速しそうな気がする。
ABがSOLiDに対してスループットを上げるために行うことのできる改善点はIlluminaの手法にそのまま適用できるから、両者の差はなかなか埋まらないし、あまり強調されないことなのだが、一定数の断片を読んだときにゲノム上の位置を特定するための計算コストがIllumina>AB>>Helicosだから、出力配列が増えれば増えるほど他陣営はコンピューター資源の方にも投資した上でシーケンサーにより高額のコンピューターをつけて販売しないと対抗ができない。
機械の販売台数がそう多くない特定分野ではスケールメリットが非常に強く働き、下手をすると独占状態にもなりかねない。
この状況があと1-2年でどうなるかは分からない(特にABが開発中の1分子シーケンサーがどうなるか)が、今のトレンドはIlluminaに強い追い風となっている。

139510 journal

kahoの日記: Google Code Jam 2009敗戦記

日記 by kaho

/.Jで紹介されていたGoogle Code Jamに参加してみたが,システムがよく分かっていなかったのでlarge問題の入力ファイルをダウンロードして放っておいた所,時間切れになっていて投稿できなくなっていた.24時間でやればいいと悠長に構えていた頭の悪さで敗退.
とりあえず自分がやった結果をメモとして記す.あまり長くならないように切り詰めたので読みにくいコードだが,その際にエンバグしていなければ少なくともsmall問題は通過するはず.

A.エイリアンの言語
与えられた辞書に適合する単語の数を数えるもの.()を[]に置換して正規表現にするだけという書くまでもないプログラムなので省略.

B.水系の区画
土地の高さデータから水の流れる方向を決め,それぞれの区画を出発点とした水流がどこに流れるかを決めるもの.
それほど大きなデータサイズではないので力技でできる.それだけにあまり工夫せず冗長なスクリプトで対処.
N x Mのデータに対して計算量はO(N x M).

#-*-coding:utf-8-*-
def propagate(lat, sinks, H, W, i, j, sink_num): # あるセルがどのsinkにつながるか調べる
    points = []
    while sinks[i][j] is None:
        points.append((i,j))
        l = lat[i][j]
        north = lat[max(0, i - 1)][j]
        west = lat[i][max( 0, j - 1)]
        east = lat[i][min(W - 1, j + 1)]
        south = lat[min(H - 1, i + 1)][j]
        if north < l and north <= west and north <= east and north <= south:
            i -= 1
        elif west < l and west <= east and west <= south:
            j -= 1
        elif east < l and east <= south:
            j += 1
        elif south < l:
            i += 1
        else: # 新しいsinkに到着
            sinks[i][j] = sink_num
            sink_num += 1
            break
    for r,c in points: sinks[r][c] = sinks[i][j] #経路を全て塗りつぶす
    return sink_num
 
def determine_flow(H, W, latitudes):
    lat = [map(int, line.split(' ')) for line in latitudes]
    sink_num = 97 # chr(97) = 'a'
    sinks = [[None] * W for i in range(H)]
    pattern = ''
    for i, j in [(h,w) for h in range(H) for w in range(W)]: #流れる先を決定
        sink_num = propagate(lat, sinks, H, W, i, j, sink_num)
        pattern += chr(sinks[i][j]) + '¥n '[j < W - 1]
    return pattern
 
if __name__ == '__main__':
    print(determine_flow(4, 5, ('7 1 8 6 7',
                                '8 0 6 5 2',
                                '3 2 3 4 1',
                                '7 5 9 2 3')))

C.特定の文字パターンの組み合わせ数
任意のスキップを入れつつ,あるテキストと同一のパターンをとる経路の数を数える問題.
シークエンスのアライメントを意識しつつ行が目的の配列で列が入力配列のマトリクスを作成し,集計した.
目的配列の長さがN,入力配列の長さがMのとき,計算量はO(N x M^2)

#-*-coding:utf-8-*-
def count_variants(text, correct):
    rows, columns = len(correct), len(text)
    matrix = []
    matrix.append([text[col] == correct[-1] for col in range(columns)]) #最初の行の初期化.末端と適合していれば1
    for row in range(1,rows):
        matrix.append([0 if text[col] != correct[-1 - row] else sum(matrix[row - 1][col + 1:]) % 10000 for col in range(columns)])
        pass
    return sum(matrix[rows-1]) % 10000
 
if __name__ == '__main__':
    print(count_variants('wwwelllcome tto code jjjjjamm', 'welcome to code jam'))

追記:特定の入力ファイルがないと何をしているか意味が分からなかったので修正.

105511 journal

kahoの日記: 実中研がJackson Labを訴える

日記 by kaho

先週見つけて読んでいなかったニュースだが,実験動物中央研究所がJackson Labを訴えるという記事があった.
実中所は川崎にある財団法人で,先日マーモセットにGFPを導入した論文の発表で注目を浴びたが,ここの成果で最も有名なものは免疫不全マウスである.
免疫不全マウスは免疫機能の解析よりも,ヒトなど別の生物由来の組織を移植しても拒絶反応を起こさないことから,ヒト化マウスを作成して実験を行うという需要が大きく,他の研究機関に配布し様々な研究に用いられている.

一方,Jackson LabはMGIというマウスの包括的なデータベースで有名な非営利の研究所であり,こちらも独自に免疫不全マウスを作製し,他の研究機関に配布している.
今回のニュースによると,実中所(免疫不全マウスの特許取得済み)はJackson Lab(免疫不全マウスの特許をとっていない)に対して訴訟を起こしたという話だ.
日本語のニュースが見つからなかったことと,英語の方は法律の用語/手続きが分からないので現状を把握できていないが,Jackson Labが作成したマウスが元々実中研が提供したマウスを(何代も繁殖させた後)使用したものであり,機能を改変させた遺伝子も同じであることから実中研の特許を侵害しているということらしい.
実中研の方は「名誉を求めている」と主張し,Jackson Labのマウスも実中研の試料/技術を元にしていることを明らかにせよということらしいが,今回のニュースに言うようにいきなり訴状を送りつけるような形だったら(実中研側からのニュースがないので真実は不明だが)穏やかではない.
とはいえ,日本人の研究者というのは権利に疎くて他国からはいいように扱われっぱなしというイメージがあるので,ちょっと珍しいニュースだし(実中研が大学などを母体にしていないといった組織上の特徴もあるだろう),今後の成り行き次第では日本の研究機関にとって興味深い実例を提供してくれるかもしれない.

87881 journal

kahoの日記: Phase4 flu

日記 by kaho

メキシコとアメリカで発生した豚インフルエンザが深刻な事態になっているようだ.
Google Newsでもこの件に関するニュースがうなぎ上りに増えている.
今回の患者には生きている豚に接触した可能性のない人が多いことからヒトからヒトへの感染が起きていることは疑えない.
ウイルスの型はH1N1で強毒性のため心配されていたH5N1ではないが,死亡率は数%ほどあり,予断を許さない状況だ.
Reuterによれば死者は25-45歳が多く,NYTやTimeのレポートではメキシコでは学校を閉鎖したことを報じている.
アメリカではまだ8例ではあるが時宜が悪いことにもうすぐGW中で多くの日本人がかカリフォルニアに行くだろうが
帰りにウイルスも持ち込まないように自衛しなければならない.

typodupeerror

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

読み込み中...