KNIMEで構造検索をしよう
今回は読み込んだsdfの構造式に対して、絞り込みを行う方法を紹介します。
全体像としてはこんな感じ↑です。構造で絞り込む処理をするノードはいくつかありますが、今回はIndigo2のSubstructure Matcherを使います。これは私の単なる好みです。ほとんど同じような設定・使い方のRDKit Molecule Substructure Filterや、描画ツールが立ち上がりながら設定できるCDKのSubstructure Searchなどなど、自分の好みが見つかると良いと思います。
さらに今回はおまけとしてMarvinSketchノード、Table Creatorノード、RowIDノードも盛り込んでいきます。Joinerは過去記事を参考にして下さい。
続きを読む【KNIME】ノード紹介:Value Counter 〜重複データを探せ〜
今回は指定したカラムの中に重複するデータがあるのか無いのか簡単に分かるノードValue Counterを紹介します。繋ぐだけの簡単ノードなので、おまけ活用例もあわせて紹介しますね。
それでは、webに転がっていたデータを一部改変したものを使って進めていきます。
名前と連絡先が入ってますね。この中から連絡先に重複があるかどうか確認します。
続きを読む【KNIME】ノード紹介:Regex Split 〜文字列を分割したい part 2〜
以前に"区切り文字(列)を指定して、文字列を分割するノード"であるcell splitterについて紹介しました。
【KNIME】ノード紹介:cell splitter 〜文字列を分割したい〜
今回は、これの第二弾です!。前回のColumn Rename (Regex)を紹介記事を書きながら、セットで紹介しようと思ったのがRegex Splitノードです。
Regex Split
正規表現を活用しながら、文字列を分割するノードです。
いつかの例を紹介してみます。
続きを読む
【KNIME】ノード紹介:Column Rename 〜カラム名を変更したい〜
今回はカラム名を変えたいときにどうするか?というお話です。後から気が変わったり、KNIMEの仕様で勝手にカラム名を決められたり、様々な理由で変更したくなるタイミングがあると思います。下の例を参考にして、操作の方法を紹介します。
*このテーブルができるまでの流れについては
【KNIME】ノード紹介:Transpose, Pivoting 〜表(table)の縦と横(行と列)を入れ替えたい〜
をご覧下さい。
Column Rename
もう、本当に名前のままのノードがあります。早速設定の内容をみちゃいましょうね。
特に難しいところはないと思います。Column Renameの入口▶︎に、カラム名を変えたいデータを繋いで、設定画面を開きます(ダブルクリック or configure...) 。画面左側に、流れてきたデータのカラム名が表示されているので、変更したいものをダブルクリックして下さい。最初は空欄だった右側に設定画面が増えます(左のリストは太字になります)。新しく右側に出た画面のChangeにチェックをいれて、新しいカラム名を入力します。また同時に、カラムの属性もプルダウンで指定可能です。
apply-OKして実行すると次のようになります。
ばっちりですね。これだけだとおもしろくないので、"正規表現を使ってカラム名を変更する"方法についても紹介したいと思います。
続きを読むKNIMEでChemdrawファイルを読みたい 〜 Chemical Structures File Reader〜
以前にsdfの読み方を紹介しました。
『構造式の入ったファイルありますか?』
→『cdxなら有るんだけど…。』
みたいなことを言われるパターンもあるんですよね。該当ファイルが1つ2つなら、手動で開いてsdfとして保存し直す。これでいいんですが、もっと沢山あるとやる気が失せます。複数ファイルを一括で読む方法は置いておいて、
【なんとかchemdrawファイルは読めないのかね?】ということです。
はい、読めます。
Erlwood nodeのChemical Structures File Readerを使うと読めるんです。難しい設定はありませんが、1つのcdxに複数の構造が含まれる場合、それぞれを単一の化合物として扱うには、4つくらいノードを繋げる必要があります。今回はこれを紹介します。
続きを読む
【KNIME】ノード紹介:Transpose, Pivoting 〜表(table)の縦と横(行と列)を入れ替えたい〜
表の行と列を入れかえたいよーということ、ありませんか?ちなみにエクセルでは
- 表をコピーする
- "形式を選択して貼り付け"を選ぶ
- "行列を入れ替える"にチェックをいれてOK
こんな感じでできます(私は他のやり方は知らん)。
ではKNIMEではどうやるのでしょう?
はい、ノード1個で終わりますよ!
Transpose
特に設定も不要です。Transposeノードをつなげれば縦横が入れ替わりますよ!
地味です。そしてあんまり面白くないですね。ポジティブに言えば"とても簡単"ですね。そんなに頻繁ではないですが、たまに使います。
これだけだとあまり面白くないので、pivotテーブルの作り方を紹介します。これも縦横入れ替えの1種ですよね!"エクセルの使い方"みたいなサイトをみていると、「ピボットは神」みたいな扱い受けてる感がある?ような気もするので、お役に立てるのではないかと思います。
続きを読む
エクセルファイルに構造式を入れたい
エクセルは便利ですし、市民権も獲得していて、データのちょっとした共有などによく使われます(少なくとも私の周りの環境では)。
でも、エクセルで構造式入りのファイルをつくるとなると「純手作業」では結構めんどくさいですよ(ハイパーコピペモード突入)。またexcelのアドインを使ってsdfを読み込んで表示する方法もありますが、重くなるし、動作もやや不安定だったりします。(chem officeのアドインを使う場合が私の周りでは多いようです。他に簡単な方法はあるんですかね?)
そんな時は、私は構造式をKNIME上でpng形式にしてtableに埋め込んで、エクセルファイルを書き出しています。
画像ファイルですので、もちろん構造情報は視覚的なものとしての意味しか成しません。それでも意外と需要があります(…本当はsdfでそのまま渡したいのだけど)。KNIMEではファイルの書き出し前に、たった1つのノードを追加するだけで実現可能です。あまり研究の役に立つとは思いませんが、紹介していきます。
続きを読む