非プログラマーのためのインフォマティクス入門。(仮)

非プログラマーがインフォマティクスについて勉強したことを記録します。主にKNIMEというソフトを使用しています。

10年の歳月

段々と寒くなってきました。体調はいかがでしょうか?

私は、熱を出してしまいました。まだ調子はイマイチですが、今日はお買い物をしてしまいました。

f:id:sumtat:20171103223715j:plain

f:id:sumtat:20171103223736j:plain

 

そうです。

iPhone Xを買っちゃいました!

店舗受け取りにしていたのですが、私の住んでいるところはクソ田舎なんで、発売日当日に朝から買いに来ていたのは私だけでした。

新しいデバイスは楽しいですね。

となりにおまけがくっついていますが、これは私が初めて買ったスマートフォンiPhone 3G】です。日本で初めてのiPhoneだったのではないでしょうか?だいたい10年前の製品です。

大きさや厚さ、色々違いますが基本的な部分はほとんど一緒です。性能面では当時の私からは想像もできないくらいの進化を遂げています。

 

この10年で、私はこんなに進化していません。

次の10年、時代に置き去りにされないよう頑張らないとですね!

(もう既に置いていかれてるのかもしれませんが…)

 

f:id:sumtat:20171103225108j:plain

ディスプレイのサイズも違いますね。10年前の端末で自分のブログを見るというのも感慨深い!

 

熱で会社も休んでたので、webを色々見ながら横になっていました。

KNIME関連では、またinfocomさんがページ内容を更新したようです(ここ数日の話だと思う)。

 

Example Workflows | KNIME | インフォコム株式会社

Exampleというコーナーが出来ていて、KNIMEに最初から入っているExample Workflowについて解説しています。

フローの解説なので、詳細な設定などには殆ど言及されていません。KNIMEに触れたことの無い方にはちょっと何言ってるか分からないかもしれませんが、よくまとまっていると思います。上からっぽくてごめんなさい。

f:id:sumtat:20171103230140p:plain

一部を抜粋させて頂きました。

ここで色とりどりの枠が、たくさん書かれていますね。

これ、どうやって書くかご存知ですか?

 

f:id:sumtat:20171103230414p:plain

作業エリアで右クリックすると"New Workflow Annotation"というのが出てくるので、これを選択します。

f:id:sumtat:20171103230556p:plain

黄色の枠が出て来ましたね!

この上でダブルクリックすれば、メモ書きを入力することもできますし、さらに右クリックをすると文字サイズや枠の色などなど、色々と変更することができますよ!

場所もドラッグすれば好きなところに配置可能です。

f:id:sumtat:20171103230838p:plain

 

ひとつ小技を紹介します!

この黄色枠を、作業エリアのずーーーーーーっと右下に動かして配置しちゃいます。

f:id:sumtat:20171103231348p:plain

 

こうしておくと、作業エリアが広がるんです!

段々となれてくると、フローは長くなりがちです。そしてそのうち作業エリアが狭く感じる時が訪れると思います。そんな時はこの小技を使うと、だいぶ便利になりますよ!

 

今回は私の趣味と、KNIMEの地味な小技の紹介でした。

それでは、また次回! 

"あ"さんにコメントを頂きました 〜オートフィル(excel)の実現〜

みなさん、こんばんは。

私は普段お酒をあまり飲みませんが、今日はなんとなくむしゃくしゃしたのでビールを飲みました。ほろ酔いで書いていきます(わたしはよなよなエールが好きです)。

 

f:id:sumtat:20171012233338j:plain

 

さて、タイトルの通り、"あ"さんよりコメントを頂きました!

とても嬉しいです!

コメント内で、次のような質問をいただきました。

エクセルチックに絶対参照しながらフィルハンドルを引っ張るような操作はknimeで実現できないでしょうか。

 コメント欄ではうまくお返事できないかなと思い、記事にしてみることにしました。的外れな内容だったら、"あ"さん、ごめんなさい! 

続きを読む

【KNIME】ノード紹介:Copy/Move Files 〜一括でファイル名を変換しよう〜

みなさん、こんにちは。10月になりましたね!

 

 今回の内容なんですが、一般的に使えそうな・TIPS的な感じのやつを考えた結果、ファイル名の一括変換に関して書いてみようと思います。

 

 Webで調べると、ファイル名の最後に連番をつけるような方法がよく紹介されています。Google先生の一番上に出てきたのは

121ware.com > サービス&サポート > Q&A > Q&A番号 018542

上記リンクの内容でした。

 

 KNIMEを使って同じこともできますが、それでは面白くないので、この記事では

ファイルの最終更新日と容量をファイル名に追加

をしてみようと思います。

<処理前>

f:id:sumtat:20171001195615p:plain

<処理後>

f:id:sumtat:20171001200502p:plain

(キャプチャの時間がずれているのは、ファイルを名前を変えて複製したからです)

 

さて、KNIMEのフローを見ていきましょう!

続きを読む

InfocomさんがKNIME関連のページを更新したよ!

もうすぐ9月もおしまいですね。

上半期の終わりということで、何かと慌ただしい時期かと思いますが頑張っていきましょう!

 

さて、今回はKNIMEの使い方に関する内容ではありません。期待していた方、申し訳有りません(1人でもいて欲しい…)。

で、何を書きたいかというと

 

まず1つ目

コメントをいただきましたーーーー!

とてもとても嬉しいです。

 

chemoinfoのノードも充実しているのでKnimeいいですね!(iwatobipenさん)

 そうなんです。私のようにコーディングもできず、ナスの底をガリガリするくらいしか能のない人間でも、KNIMEのおかげで、そこそこの量のデータ(化合物情報を含む)を扱うことができます。 

 

最近knimeを使い始めました。記事楽しみにしています。(あさん)

 泣ける。社交辞令でも楽しみにしてもらえるなんて!触りはじめるきっかけになっているのなら、もっと泣ける。ブログを書くのも今回が初めてですし、うまく内容をまとめられているか不安はありますが、今後も頑張りますね!

 

続きを読む

KNIMEで化合物をクラスタリング&可視化してみよう

みなさん、こんにちは。

私は急な気温の変化と、ブタクサ?花粉で体調がイマイチです。

心はあまり元気でないので、せめて体は元気で過ごしたいものです。

 

 さて、今回は何について書こうかなーと考えていたのですが、前回、ChEMBLからとってきた情報を使ってクラスタリングでもしてみようかなと思います。

f:id:sumtat:20170917232938p:plain

 上記のように、前回はNS5Bポリメラーゼ阻害剤関する1697化合物ついて、文献名と活性値を持つテーブルを作成しました。これを構造ベースでクラスタリングしていきます。結果をわかりやすくするために、記載されている化合物数が多い文献上位5件に関して作業をしていきます。

 

全体のフローとしてはこんな感じです↓

f:id:sumtat:20170917233759p:plain

それではスタートです!

続きを読む

KNIMEを使ってChEMBLから情報をとってくるンゴ

なんだか、最近巷ではなんJ民が溢れているそうですね!

headlines.yahoo.co.jp

おさぼりおじさんが、日中よく読んでいる*1というyahooニュースで取り上げられているくらいなので、間違い無いですね。驚きですね。

 

 

さて、毒吐きから始めてしまいましたが、今回はKNIMEを使ってChEMBLから情報を取ってくる例を紹介しようと思います。

 

最初にポイントを2点!

  1. ChEMBL db Connectorというお手軽簡単ノードがKNIMEにはあるよ⭐︎
  2. ChEMBLもREST APIに対応しているので、いろいろ工夫して情報が取れるよ!

という内容について紹介します。

 

例としてはNS5Bポリメラーゼ阻害剤について情報収集してみようと思います。

ソバルディのやつです。

f:id:sumtat:20170910155127p:plain

 

TargetのIDとしてCHEMBL5375(uniprot : Q8JXU8)が割り当てられいます。*2 *3

 今回は"CHEMBL5375(uniprot : Q8JXU8)"を出発時に入力情報とする、次のようなフローについて順に紹介します。過去記事とかぶる内容もあるので、該当箇所はリンク等を活用することにして、解説は軽めにします。

f:id:sumtat:20170910182454p:plain

*1:息抜きレベルを超えて、がっつりと芸能ニュースを読んでいるのをみると、正直ムカつきますね

*2:ソホスブビル:CHEMBL1259059のターゲットとしては、CHEMBL379(Hepatitis C virus)、CHEMBL395(HepG2)、CHEMBL382(CCRF-CEM)、CHEMBL612545(Unchecked)の4種が紐付いています。キャプチャでは【Approved Drugsとしてのソホスブビル】のメカニズムとしてCHEMBL5375が紐付いているため、今回のCHEMBL5375を基準とする検索ではソホスブビルはhitしてきません。自分の知りたい内容がちゃんと含まれるか否か、よく確認する必要があるので、お手軽簡単ほほいのほい!で済ませすぎるのはあまりお勧めはできません。

*3:chemblの作りに興味のある方がいるかもなので、chembl_23の構成図を載せておきますね。化合物情報を仲介役としてターゲット情報と上市薬情報は繋がっていますが、ターゲット情報と上市薬情報は直接繋がってはいないことがわかると思います。

f:id:sumtat:20170910160647p:plain

続きを読む

KNIMEで明日の天気を調べよう! 〜REST APIの活用〜

今回はKNIMEを使って、明日の天気予報を調べてみようと思います。

…このこと自体に大して意味はありません。

ポイントは

KNIMEはweb上の情報も取得することができる

という点です。

 

 色んな方法があるのですが、今回はわりと分かりやすい「REST API」を活用した方法を紹介しようと思います*1

例として取り上げる題材は、無料&内容が分かりやすいLivedoor天気情報を利用させていただくことにします。

weather.livedoor.com

 

上リンクの内容を確認していただくと次のような記述があります。

(例)「福岡県・久留米の天気」を取得する場合

下記URLにアクセスしてJSONデータを取得します。
基本URL + 久留米のID(400040)

 REST APIという方法の正確な解説は私にはちょっと難しいですが、ざっくりと言うと

Livedoorさん!(http://weather.livedoor.com/***/)、JSONという形式で(json/v1/)、久留米(?city=400040)のお天気情報を教えてください」

という呪文を詠唱すると、希望通りの情報を召喚できるというものです。

 

呪文の唱え方としては、例えばwebブラウザのアドレスバーににhttp://*****/400040を入力してgoすると次のように久留米のお天気情報が返ってきます。

f:id:sumtat:20170902095152p:plain

文字コードの関係で、ちょっと見苦しいキャプチャですが、こんな感じです。一見汚そうに見えますが、これはJSONという形式で書かれた綺麗な情報です(後述)!この中から、必要な情報をKNIMEを使って抜き取れば良いということです。

 

ということで、全国分の明日のお天気をKNIMEを使ってgetしてみようと思います。

フローの全体像としては次の通りです。

f:id:sumtat:20170902100233p:plain

 

上下の2つに分岐していますが、やっていることは同じです。両方とも紹介します。

それでは最初から順を追って解説していきます。

*1:webページのhtmlをそのまま取ってきたり、SPARQLのEndpointに繋いだり、できることはたくさんありますよ!

続きを読む