マイクロアレイ解析結果は、プローブ・シグナル値・アノテーション情報等で情報が多くなりがちです。タブ区切りデータとして Excel 等で結果を眺めても、列数が多くなると、煩わしく感じるものです。
特に、「必要な列だけ使いたい」、「ちょっとデータの確認を」という時に、 Excel 等で開いて、不要な列を削除して、保存し直して・・・という操作を開く度に行うのは効率的ではありません。
そこで、 Linux のコマンドを用いて、解析結果を簡単に操作する方法を紹介したいと思います。端末画面のコマンドだけで操作するのは、最初は難しいと感じる方もいらっしゃるかもしれませんが、慣れてくると簡単に素早くデータを操作でき、元のデータを直接変更しないので安全という利点もあります。
今回は、データの表示と列情報の抽出を紹介します。
cat
端末画面で直接テキストデータを表示(、連結)する時に使います。行数の多いデータを表示すると、データが高速に流れて行ってしまうので、 less というコマンドと組み合わせて、1ページ単位で表示する事が多いです。
使い方
cat test.txt | less
※次ページは「スペースキー」、終了には「q」を押します。
cut
列情報が多い時に、表示する列だけを選択して表示します。例では1列目と3列目だけ、3列目以降全てを表示します。但し、列の区切り情報は「TAB」区切りです。オプションで区切り文字や切り出し方法を変更できます。
使い方1(1列、3列目表示)
cat test.txt | cut -f1,3 | less
使い方2(3列目以降表示)
cat test.txt | cut -f3- | less
使い方3(列抽出結果保存)
cat test.txt | cut -f1,3 > test_cut.txt
※test_cut.txtという新しいファイルで結果を保存します。元のファイル内容は変更されません。
サンプル>
test.txt(タブ区切りテキストデータ)
ProbeID PrimaryAccession RefSeqAccession GenbankAccession A_55_Pxx1 ENSMUST000000yyy1 AKxxx1 Mm.nnn1 A_55_Pxx2 ENSMUST000000yyy2 AKxxx2 Mm.nnn2 A_55_Pxx3 ENSMUST000000yyy3 AKxxx3 Mm.nnn3
実行例>
cat test.txt | cut -f1,3 | less
ProbeID RefSeqAccession A_55_Pxx1 AKxxx1 A_55_Pxx2 AKxxx2 A_55_Pxx3 AKxxx3