CmhaDSO Command


booltable

ID情報のみ格納したベクトル型のファイル群を入力とし 各IDの各ファイル中での存否情報をbool値の表データとして返す。

booltable [-f]   ...

CMHADSOデモデータdemo_0001.tar.gzを入手・展開する。

booltable A B C D
Zfp36	0	1	0	0
Zfp36l1	0	1	0	0
Zfp469	1	1	0	0
Zfp503	0	1	0	0
Zg16	1	1	1	1
booltable -f A B C D
Zfp36	0	1	0	0	0100	1
Zfp36l1	0	1	0	0	0100	1
Zfp469	1	1	0	0	1100	2
Zfp503	0	1	0	0	0100	1
Zg16	1	1	1	1	1111	4
isin/infil/ninfil

いずれのコマンドもBで指定したリスト要素がAに存在するかどうかの結果を返す。 isinでは存否結果をブール値で返す。 infilでは存在する行のみ抽出し、ninfilでは逆に存在しない行のみ抽出する。 存否判断は既定ではAの一列目の値に基づくが、これは変更することもできる。 既定では入力Aはスペース区切りとみなされるが、-tオプションによりこれをタブ区切りに変更することができる。

cat A | isin   [-t] B [A's_kfld]
cat A | infil  [-t] B [A's_kfld]
cat A | ninfil [-t] B [A's_kfld]

CMHADSOデモデータdemo_0004.tar.gzを入手・展開する。

# a1 (スペース区切り)
a e 1
b d 2
c c 3
d b 4
e a 5

# a2 (タブ区切り)
a	e	1
b	d	2
c	c	3
d	b	4
e	a	5

# b
a
b
c
cat a1 | isin b
1
1
1
0
0
cat a1 | isin b 2
0
0
1
1
1
cat a1 | infil b
a e 1
b d 2
c c 3
cat a1 | ninfil b
d b 4
e a 5
cat a2 | ninfil -t b 
d	b	4
e	a	5
fct/ifct

fctコマンドは指定したファクター順に整序するために使用し、ifctコマンドは指定したファクター順に整序するための索引を行頭につけるために使用する。

CMHADSOデモデータdemo_0006.tarを入手・展開する。

(入力データ:chrdata)
chr1	195154279
chr2	181755017
chrX	169476592
chr3	159745316
chr4	156860686
chr5	151758149
chr6	149588044
chr7	144995196
chr10	130530862
chr8	130127694
chr14	125139656
(省略)
cat chrdata | fct chrfactor

# 以下出力結果
chr1	195154279
chr2	181755017
chr3	159745316
chr4	156860686
chr5	151758149
chr6	149588044
chr7	144995196
chr8	130127694
chr9	124359700
chr10	130530862
chr11	121973369
chr12	120092757
chr13	120883175
chr14	125139656
chr15	104073951
chr16	98008968
chr17	95294699
chr18	90720763
chr19	61420004
chrX	169476592
chrY	91455967
chrM	16299
cat chrdata | ifct chrfactor

# 以下、出力結果
1 chr1	195154279
2 chr2	181755017
20 chrX	169476592
3 chr3	159745316
4 chr4	156860686
5 chr5	151758149
6 chr6	149588044
7 chr7	144995196
10 chr10	130530862
8 chr8	130127694
14 chr14	125139656
9 chr9	124359700
11 chr11	121973369
13 chr13	120883175
12 chr12	120092757
15 chr15	104073951
16 chr16	98008968
17 chr17	95294699
21 chrY	91455967
18 chr18	90720763
19 chr19	61420004
22 chrM	16299
gsize

multi-FASTAファイルのIDと塩基長の対応表をつくるために使用する。

CMHADSOデモデータdemo_0007を入手・展開する。

cat demo_0007

# 以下、出力結果
>ID1 20塩基
ATGGGCCTCACCGTGTCCGC
>ID2 複数行に分けても大丈夫
ATGGGCCTCA
CCGTGTCCGC
>ID3 A-Za-zはカウント対象
NNNNNNNNNN
nnnnnnnnnn
>ID4 空白文字は無視される
ATG GGC CTC ACC GTG TCC GC
cat demo_0007 | gsize

# 以下、出力結果
ID1	20
ID2	20
ID3	20
ID4	20
re

制限酵素切断箇所を出力するコマンドです。 対象となる塩基配列データ中にATGCatgc以外の文字が含まれていても無視されます。

CMHADSOデモデータdemo_0008を入手・展開する。

cat demo_0008

# 以下、出力結果/ 配列情報のみ (FASTA形式でない)
ATGGAACGGATCCCCAGCGCGCAACCACCTCCTACCTGCCTGCCCAAAGC 50
TCCAGGGCTGGAGCACGGAGACCTGTCAGGGATGGATTTTGCCCACATGT 100
ACCAAGTGTACAAGTCCAGGCGGGGAATAAAACGGAGCGAAGACAGCAAG 150
GAAACTTACAAACTGCCGCACCGGCTGATTGAGAAAAAGAGACGTGACCG 200
GATTAACGAGTGCATTGCCCAGCTGAAGGATCTCCTACCCGAACATCTCA 250
AACTTACTACTTTGGGTCACTTGGAAAAAGCAGTGGTTCTGGAGCTTACG 300
TTGAAGCACGTGAAAGCATTGACAAATCTAATTGATCAGCAGCAGCAGAA 350
AATCATTGCCCTGCAGAGCGGTTTACAAGCTGGTGATTTGTCGGGAAGAA 400
ATCTCGAGGCAGGGCAAGAAATGTTCTGCTCAGGTTTCCAGACTTGTGCC 450
CGTGAGGTACTTCAGTACCTGGCGAAGCATGAGAACACTCGGGACCTGAA 500
ATCTTCCCAGCTCGTCACTCATCTCCATCGTGTGGTCTCGGAGCTGCTGC 550
AGGGTGGTGCTTCCAGGAAACCATTGGACTCGGCTCCCAAAGCCGTGGAC 600
TTGAAAGAGAAGCCCAGCTTCCTAGCCAAGGGATCAGAAGGCCCTGGGAA 650
AAACTGTGTGCCAGTCATCCAGCGGACTTTTGCTCCCTCGGGTGGGGAGC 700
AGAGCGGCAGTGACACGGACACAGACAGTGGCTATGGAGGTGAATTGGAG 750
AAGGGGGACTTGCGCAGTGAGCAGCCGTACTTCAAAAGCGACCATGGACG 800
CAGGTTCGCCGTGGGAGAACGTGTCAGCACAATTAAGCAAGAATCCGAAG 850
AGCCCCCCACCAAAAAGAGCCGAATGCAGCTCTCAGAAGAGGAAGGCCAC 900
TTCGCGGGCAGTGATCTGATGGGTTCCCCATTTCTTGGGCCACACCCACA 950
TCAGCCTCCTTTTTGCCTTCCCTTCTATCTCATCCCACCATCGGCCACTG 1000
CCTACCTGCCTATGCTGGAGAAATGCTGGTACCCCACCTCTGTGCCAGTG 1050
TTATACCCAGGCCTCAACACCTCAGCTGCAGCCCTCTCCAGCTTCATGAA 1100
CCCAGACAAGATACCGACTCCCTTGCTTCTGCCCCAGAGACTCCCTTCTC 1150
CTTTGGCACATTCGTCCCTCGACTCTTCGGCCTTGCTCCAGGCTTTGAAG 1200
CAGATCCCTCCTTTAAACTTAGAAACCAAAGACTAA 1236
cat demo_0008 | re

# 以下、出力結果 (主要制限酵素における切断箇所)。
# -fオプションを付ければ主要制限酵素で切断した場合の箇所も含めて出力する
ApaI
BamHI 8
BbsI 146
BglI 171
BglII
BsaI 62 540
ClaI
DpnI 10 230 335 633 914 1204
DraI 1214
EcoRI
EcoRV
HindIII
KpnI 1032
MluI
NcoI 792
NdeI
NheI
NotI
PacI
ScaI
SmaI
XbaI
XcmI 570
XhoI 403

-lオプションで切断配列を確認することもできる。

re -l | grep -i eco

# 以下出力結果(2,3列目は切断個所)
  EcoNI     5  6  CCTnnnnnAGG
  EcoO109I  2  5  rGGnCCy
  EcoRI     1  5  GAATTC
  EcoRV     3  3  GATATC
  Eco53kI   3  3  GAGCTC
rc

入力塩基配列を相補鎖配列(reverse complement)に変換するコマンドです。 対象となる塩基配列データ中にアルファベット以外の文字が含まれていても無視されます。

CMHADSOデモデータdemo_0009を入手・展開する。

cat demo_0009

# 以下、出力結果
CAATGTTATGTGTAATCCCG
GCTTCATTCGCTTCCCAACC
CAATGACCCCTCATCCTCTA
TAAGAGTAGACACTACGAAC
AAATGTCTGGTAAATGACTC
cat demo_0009 | rc

# 以下、出力結果/rcコマンドは行指向であることに注意
CGGGATTACACATAACATTG
GGTTGGGAAGCGAATGAAGC
TAGAGGATGAGGGGTCATTG
GTTCGTAGTGTCTACTCTTA
GAGTCATTTACCAGACATTT
cat demo_0009 | rc -k  # 元の配列もkeepする場合

# 以下、出力結果
CAATGTTATGTGTAATCCCG CGGGATTACACATAACATTG
GCTTCATTCGCTTCCCAACC GGTTGGGAAGCGAATGAAGC
CAATGACCCCTCATCCTCTA TAGAGGATGAGGGGTCATTG
TAAGAGTAGACACTACGAAC GTTCGTAGTGTCTACTCTTA
AAATGTCTGGTAAATGACTC GAGTCATTTACCAGACATTT
re

制限酵素切断箇所を出力するコマンドです。 対象となる塩基配列データ中にATGCatgc以外の文字が含まれていても無視されます。

CMHADSOデモデータdemo_0008を入手・展開する。

cat demo_0008

# 以下、出力結果/ 配列情報のみ (FASTA形式でない)
ATGGAACGGATCCCCAGCGCGCAACCACCTCCTACCTGCCTGCCCAAAGC 50
TCCAGGGCTGGAGCACGGAGACCTGTCAGGGATGGATTTTGCCCACATGT 100
ACCAAGTGTACAAGTCCAGGCGGGGAATAAAACGGAGCGAAGACAGCAAG 150
GAAACTTACAAACTGCCGCACCGGCTGATTGAGAAAAAGAGACGTGACCG 200
GATTAACGAGTGCATTGCCCAGCTGAAGGATCTCCTACCCGAACATCTCA 250
AACTTACTACTTTGGGTCACTTGGAAAAAGCAGTGGTTCTGGAGCTTACG 300
TTGAAGCACGTGAAAGCATTGACAAATCTAATTGATCAGCAGCAGCAGAA 350
AATCATTGCCCTGCAGAGCGGTTTACAAGCTGGTGATTTGTCGGGAAGAA 400
ATCTCGAGGCAGGGCAAGAAATGTTCTGCTCAGGTTTCCAGACTTGTGCC 450
CGTGAGGTACTTCAGTACCTGGCGAAGCATGAGAACACTCGGGACCTGAA 500
ATCTTCCCAGCTCGTCACTCATCTCCATCGTGTGGTCTCGGAGCTGCTGC 550
AGGGTGGTGCTTCCAGGAAACCATTGGACTCGGCTCCCAAAGCCGTGGAC 600
TTGAAAGAGAAGCCCAGCTTCCTAGCCAAGGGATCAGAAGGCCCTGGGAA 650
AAACTGTGTGCCAGTCATCCAGCGGACTTTTGCTCCCTCGGGTGGGGAGC 700
AGAGCGGCAGTGACACGGACACAGACAGTGGCTATGGAGGTGAATTGGAG 750
AAGGGGGACTTGCGCAGTGAGCAGCCGTACTTCAAAAGCGACCATGGACG 800
CAGGTTCGCCGTGGGAGAACGTGTCAGCACAATTAAGCAAGAATCCGAAG 850
AGCCCCCCACCAAAAAGAGCCGAATGCAGCTCTCAGAAGAGGAAGGCCAC 900
TTCGCGGGCAGTGATCTGATGGGTTCCCCATTTCTTGGGCCACACCCACA 950
TCAGCCTCCTTTTTGCCTTCCCTTCTATCTCATCCCACCATCGGCCACTG 1000
CCTACCTGCCTATGCTGGAGAAATGCTGGTACCCCACCTCTGTGCCAGTG 1050
TTATACCCAGGCCTCAACACCTCAGCTGCAGCCCTCTCCAGCTTCATGAA 1100
CCCAGACAAGATACCGACTCCCTTGCTTCTGCCCCAGAGACTCCCTTCTC 1150
CTTTGGCACATTCGTCCCTCGACTCTTCGGCCTTGCTCCAGGCTTTGAAG 1200
CAGATCCCTCCTTTAAACTTAGAAACCAAAGACTAA 1236
cat demo_0008 | codon

  # --- 出力結果 ---------
  # 1列目:塩基配列番号(左端)
  # 2列目:アミノ酸配列番号(左端)
  # 3列目:塩基配列
  # 4列目:翻訳配列
  # ----------------------

1 1 atg M
4 2 gaa E
7 3 cgg R
10 4 atc I
13 5 ccc P
16 6 agc S
19 7 gcg A
22 8 caa Q
25 9 cca P
28 10 cct P
(以下省略)

翻訳配列のみ取得するには-aオプションを付ける。

cat demo_0008 | codon -a

# 以下、出力結果
MERIPSAQPPPTCLPKAPGLEHGDLSGMDFAHMYQVYKSRRGIKRSEDSKETYKLPHRLIEKKRRDRINECIAQLKDLLPEHLKLTTLGHLEKAVVLELTLKHVKALTNLIDQQQQKIIALQSGLQAGDLSGRNLEAGQEMFCSGFQTCAREVLQYLAKHENTRDLKSSQLVTHLHRVVSELLQGGASRKPLDSAPKAVDLKEKPSFLAKGSEGPGKNCVPVIQRTFAPSGGEQSGSDTDTDSGYGGELEKGDLRSEQPYFKSDHGRRFAVGERVSTIKQESEEPPTKKSRMQLSEEEGHFAGSDLMGSPFLGPHPHQPPFCLPFYLIPPSATAYLPMLEKCWYPTSVPVLYPGLNTSAAALSSFMNPDKIPTPLLLPQRLPSPLAHSSLDSSALLQALKQIPPLNLETKD*
外部取得コマンド

321516さんやcolrichieさんの作製したコマンド各種(cjoin0, cjoin1, cjoin2, self, delf, getfirst, getlast, count, keta, parsrc.sh, parsrj.sh, parsrt.sh, parsrx.sh, seq, yarr)をhttps://github.com/ShellShoccar-jpnより入手し、上記のコマンドとともに梱包し利用させていただいている。両氏に謹んで御礼申し上げる。