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

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

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

【KNIME】ノード紹介:Nominal Value Row Filter 〜欲しいカテゴリのrowを抽出したい〜

お盆休みですね。まったりと更新してきます。

 

 さて、行(row)の抽出のために使うrow filterやrow splitterには結構色々な種類があります。これまでの記事では

なんかを紹介しました。個人的には上記のsplitter2つをよく使います。

今回はより一段とお手軽な設定で、欲しいカテゴリのデータを抽出するときに活用できそうなノードを紹介します。

 

例題としては、

f:id:sumtat:20170811222111p:plain上記のようなテーブルから、"犬と猿"のデータを取ってこようと思います。

続きを読む

【KNIME】ノード紹介:Missing Value 〜欠損値を処理しよう〜

 今回は欠損値の処理に使えるノードを紹介します。ざっくりといえばテーブルの空っぽの部分をどうするかということです。

 KNIME(3.3以上)のテーブル表示では、欠損値は?で表示されます(3.2以前は?です。黒色のはてななので、欠損値なのか本物の?なのかちょっとわかりにくので注意)。こういう空っぽのデータがあると、統計解析などの際に不具合です。欠損値を持つデータを除く対応もあると思いますし、何かしらの固定値等で埋めてしまうなどの対応もあると思います。

 主に、そんなときに使えるのがMissing Valueノードです。例として次のようなデータを読んで欠損値処理をしてみます。

f:id:sumtat:20170809220941p:plain

 おぅ。セルの結合が含まれてますね…。解析するときに、これ邪魔です。Missing Valueノードを使って、これもうまく処理しちゃいましょう!

 

続きを読む

【KNIME】ノード紹介:concatenate 〜複数のテーブルをとにかく纏める〜

今回は時間がうまく作れなかったので、短めの記事です。でも活用頻度は大のノードを紹介します。

 

Concatenate

 名前の通り、連結するノードです。極力余計なことはしないで、複数のデータを"縦方向に"連結します。キャプチャを見た方が早いと思うので、貼ります↓。

f:id:sumtat:20170809033425p:plain

 入力側の2つのテーブルには"name", "maker", "price"の共通するカラムがあります(属性も一致)。カラム名が同じものは、同じところに並べてくれます。一方で"status", "amount"はそれぞれ片方にしかありません。このようなカラムもとにかく連結してくれます。データのない部分は欠損値になります。

 設定画面で、両者に共通のカラムだけ残すという指定もできますが、何も考えず繋げてGoでいいかな?と思いますよ!

続きを読む

【メドケム】KNIMEでリガンド効率を計算するよ 〜言い換えれば、ただの四則演算〜

 今回は四則演算の題材としてLE(Ligand Efficiency, リガンド効率)の計算をしてみます。もはや説明の必要もないかもしれませんが、ざっくりと言えば、

"水素以外の原子1つ1つが、どのくらい頑張って活性に貢献してるの?"

みたいな感じでしょうか。ずいぶん前に提唱された指標ですが、わかりやすいし私は嫌いじゃないです。

 

定義式としては

非水素原子数(HA)あたりの結合のギブス自由エネルギー

f:id:sumtat:20170807222426p:plain

です。

続きを読む

KNIMEで構造検索をしよう

 今回は読み込んだsdfの構造式に対して、絞り込みを行う方法を紹介します。

 

f:id:sumtat:20170803232503p:plain

 

 全体像としてはこんな感じ↑です。構造で絞り込む処理をするノードはいくつかありますが、今回はIndigo2のSubstructure Matcherを使います。これは私の単なる好みです。ほとんど同じような設定・使い方のRDKit Molecule Substructure Filterや、描画ツールが立ち上がりながら設定できるCDKのSubstructure Searchなどなど、自分の好みが見つかると良いと思います。

 さらに今回はおまけとしてMarvinSketchノード、Table Creatorノード、RowIDノードも盛り込んでいきます。Joinerは過去記事を参考にして下さい。

続きを読む

【KNIME】ノード紹介:Value Counter 〜重複データを探せ〜

 今回は指定したカラムの中に重複するデータがあるのか無いのか簡単に分かるノードValue Counterを紹介します。繋ぐだけの簡単ノードなので、おまけ活用例もあわせて紹介しますね。

 それでは、webに転がっていたデータを一部改変したものを使って進めていきます。

f:id:sumtat:20170805221129p:plain

名前と連絡先が入ってますね。この中から連絡先に重複があるかどうか確認します。

続きを読む

【KNIME】ノード紹介:Regex Split 〜文字列を分割したい part 2〜

 以前に"区切り文字(列)を指定して、文字列を分割するノード"であるcell splitterについて紹介しました。

【KNIME】ノード紹介:cell splitter 〜文字列を分割したい〜

今回は、これの第二弾です!。前回のColumn Rename (Regex)を紹介記事を書きながら、セットで紹介しようと思ったのがRegex Splitノードです。

 

Regex Split

 正規表現を活用しながら、文字列を分割するノードです。

f:id:sumtat:20170804213009p:plain

 いつかの例を紹介してみます。

 

続きを読む