LoginSignup
0
0

More than 3 years have passed since last update.

CDSの変異情報から翻訳後のタンパク質の配列情報を取得する

Last updated at Posted at 2020-01-16

遺伝子のコーディングシーケンス(CDS)上の変異の影響を見る

CDS上の塩基を変化させた場合に起こるアミノ酸への変異の影響を概観する

手順

  • Refseq NMのIDから適当な方法でCDSを取得する
  • 取得したCDSをアミノ酸の配列に翻訳する
  • 取得したCDS上で変異を反映する
  • 変位を反映したCDSをアミノ酸配列に翻訳する

Refseq NMのIDから適当な方法でCDSを取得する

RefseqのIDからCDSのIDを取得するためにCCDSプロジェクトのデータを利用する事とする

CCDS プロジェクトはヒトとマウスのコンセンサスなコーディング領域の標準セットを提供するもの

CCDSのファイルをダウンロードする

RefseqのIDからCCDSのIDを調べるためにCCDS2Sequence.current.txtを取得

curl -LO ftp://ftp.ncbi.nlm.nih.gov/pub/CCDS/current_human/CCDS2Sequence.current.txt

このタブ区切りテキストの第1カラムがCCDSのid、第5カラムがRefseqのnucleotide_IDとなっている

#ccds   original_member current_member  source  nucleotide_ID   protein_ID  status_in_CCDS  sequence_status
CCDS2.2 1   0   NCBI    NM_152486.2 NP_689699.2 Updated 0
CCDS2.2 0   1   NCBI    NM_152486.3 NP_689699.2 Accepted    1
CCDS2.2 1   1   EBI,WTSI    ENST00000342066.7   ENSP00000342313.3   Accepted    1
...(以下省略)

RefseqのIDからCCDSのIDを求める

RefseqのID "NM_130786"からCCDSのIDを簡易に調べてみる

% grep "NM_130786." CCDS2Sequence.current.txt 
CCDS12976.1 1   0   NCBI    NM_130786.3 NP_570602.2 Updated 0
CCDS12976.1 0   1   NCBI    NM_130786.4 NP_570602.2 Accepted    1

この結果からは、"NM_130768"については "NM_130768.4"がコンセンサスとして選ばれていて、"CCDS12976.1"が対応するCCDSのIDとわかる

CCDSのIDからCDSを取得する

CDSを取得するためにCCDS_nucleotide.current.fna.gzを取得

curl -LO ftp://ftp.ncbi.nlm.nih.gov/pub/CCDS/current_human/CCDS_nucleotide.current.fna.gz

取得したCCDS_nucleotide.current.fna.gzファイルの再圧縮

CCDS_nucleotide.current.fna.gzはfasta形式のファイルなので、samtools faidxを利用してデータを参照するために一度展開してbgzipコマンドを利用して再度圧縮する

CCDS_nucleotide.current.fna.gzファイルをgunzipで展開

$ gunzip  CCDS_nucleotide.current.fna.gz

bgzipで圧縮すると共にインデックスを作製

$ bgzip -i CCDS_nucleotide.current.fna

尚、bgzipは複数スレッドに対応しているので、オプション-@ スレッド数である程度の数のスレッドを指定する事で高速に動作する
もともと、ブロック毎に圧縮するのでスレッドによる高速化に向いているのだろう
試しに、スレッド数を変更して実施した結果は下記の通り(実行環境がQuad-Core Intel Core i7なので最大8スレッド迄)

$ time bgzip -i -@ 1 CCDS_nucleotide.current.fna
bgzip -i -@ 1 CCDS_nucleotide.current.fna  9.58s user 0.08s system 99% cpu 9.739 total
$ gunzip  CCDS_nucleotide.current.fna.gz
$
$time bgzip -i -@ 4 CCDS_nucleotide.current.fna
bgzip -i -@ 4 CCDS_nucleotide.current.fna  10.21s user 0.12s system 391% cpu 2.638 total
$ gunzip  CCDS_nucleotide.current.fna.gz
$
$ time bgzip -i -@ 8 CCDS_nucleotide.current.fna
bgzip -i -@ 8 CCDS_nucleotide.current.fna  11.89s user 0.12s system 710% cpu 1.689 total

圧縮時間を見ると9.6秒から1.7秒までが削減されている(計算時間が短いので、これ例ではあまり恩恵は無い)

CCDSからCDSを取得する

fastaファイルから配列を取得するためには、ヘッダーの情報が必要となる
"CCDS12976.1"が含まれるヘッダーの情報を取得する
ここではfastaに対するindexファイルを利用している

$ grep 'CCDS12976.1' CCDS_nucleotide.current.fna.gz.fai | cut -f 1
CCDS12976.1|Hs109|chr19

ヘッダーの情報がわかったのでsamtools faidxを利用してCDSを取得する
ヘッダーの文字列に|が含まれるのでダブルクオーテーションで挟んで"CCDS12976.1|Hs109|chr19"として検索

$ samtools faidx CCDS_nucleotide.current.fna.gz "CCDS12976.1|Hs109|chr19" 
>CCDS12976.1|Hs109|chr19
ATGTCCATGCTCGTGGTCTTTCTCTTGCTGTGGGGTGTCACCTGGGGCCCAGTGACAGAA
GCAGCCATATTTTATGAGACGCAGCCCAGCCTGTGGGCAGAGTCCGAATCACTGCTGAAA
...(中略)
GAATCGGAGCTCAGCGACCCTGTGGAGCTCCTGGTGGCAGAAAGCTGA

塩基配列からアミノ酸配列への変換と変異の適応

配列が取得できたので、変異がCDSを単純に変更するだけとみなした場合のアミノ酸配列への影響を求めるためのプログラムを準備する

必要となるツールを準備する

  • translate_cds(cds_sequence)
    • cdsの配列を入力として、アミノ酸配列を生成
      • STOPは"*"に変換
  • retrieve_base_sequence_from_fasta(fasta)
    • fastaの1配列のデータから、ヘッダーと改行を除いた配列を生成
  • compare_sequence(target1, target2, line_length=60):
    • 入力された配列 target1, target2を比較して一致部分と異なる部分を出力
  • apply_snp(sequence, position, ref, alt)
    • 与えられた配列の指定位置のrefaltで置換した配列を生成
  • apply_del(sequence, position1, position2)
    • 与えられた配列の指定位置position1からposition2を削除した配列を生成
  • apply_ins(sequence, position, insertion)
    • 与えられた配列の指定位置positionにinsertionの配列を挿入した配列を生成
cds2protein.py
from math import ceil

def translate_cds(cds_sequence):
    """
    Return translated AA sequence from base sequence.
    """
    translation_table = {
        'AAA': 'K', 'AAC': 'N', 'AAG': 'K', 'AAT': 'N',
        'ACA': 'T', 'ACC': 'T', 'ACG': 'T', 'ACT': 'T',
        'AGA': 'R', 'AGC': 'S', 'AGG': 'R', 'AGT': 'S',
        'ATA': 'I', 'ATC': 'I', 'ATG': 'M', 'ATT': 'I',
        'CAA': 'Q', 'CAC': 'H', 'CAG': 'Q', 'CAT': 'H',
        'CCA': 'P', 'CCC': 'P', 'CCG': 'P', 'CCT': 'P',
        'CGA': 'R', 'CGC': 'R', 'CGG': 'R', 'CGT': 'R',
        'CTA': 'L', 'CTC': 'L', 'CTG': 'L', 'CTT': 'L',
        'GAA': 'E', 'GAC': 'D', 'GAG': 'E', 'GAT': 'D',
        'GCA': 'A', 'GCC': 'A', 'GCG': 'A', 'GCT': 'A',
        'GGA': 'G', 'GGC': 'G', 'GGG': 'G', 'GGT': 'G',
        'GTA': 'V', 'GTC': 'V', 'GTG': 'V', 'GTT': 'V',
        'TAA': '*', 'TAC': 'Y', 'TAG': '*', 'TAT': 'Y',
        'TCA': 'S', 'TCC': 'S', 'TCG': 'S', 'TCT': 'S',
        'TGA': '*', 'TGC': 'C', 'TGG': 'W', 'TGT': 'C',
        'TTA': 'L', 'TTC': 'F', 'TTG': 'L', 'TTT': 'F'
    }
    if len(cds_sequence) < 3:
        return ""

    cds_length = int(len(cds_sequence) / 3)
    return "".join([translation_table[cds_sequence[i * 3:(i + 1) * 3].upper()] for i in range(cds_length)])


def retrieve_base_sequence_from_fasta(fasta):
    """
    Returns continuous sequence without header.
    """
    return "".join([item for item in fasta.splitlines() if not item.startswith(">")])


def compare_sequence(target1, target2, line_length=60):
    """
    Compare sequence and print difference with "X"
    """
    common_length = min(len(target1), len(target2))
    rows = ceil(common_length / line_length)

    difference = ''.join(["." if target1[i] == target2[i] else 'X' for i in range(common_length)])
    for i in range(rows):
        def print_line(sequence):
            print(f"{i * line_length + 1:0=4} {sequence[i * line_length:(i + 1) * line_length]}")

        print_line(target1)
        print_line(difference)
        print_line(target2)
        print()


def apply_snp(sequence, position, ref, alt):
    """
    Return modified sequence at specified position in HGVS.
    """
    if sequence[position - 1] != ref:
        raise ValueError("Base Sequence Mismatch at the specified position.")
    return sequence[0:position - 1] + alt + sequence[position:]


def apply_del(sequence, position1, position2):
    """
    Return modified sequence at specified position in HGVS.
    """
    return sequence[0:position1 - 1] + sequence[position2:]


def apply_ins(sequence, position, insertion):
    """
    Return modified sequence at specified position in HGVS.
    """
    return sequence[0:position] + insertion + sequence[position:]

これを利用してcds配列に変異を加えたものを比較してみる

#!/usr/bin/env python
import cds2protein as c2p

# A1BG
fasta_data = '''
>CCDS12976.1|Hs109|chr19
ATGTCCATGCTCGTGGTCTTTCTCTTGCTGTGGGGTGTCACCTGGGGCCCAGTGACAGAA
GCAGCCATATTTTATGAGACGCAGCCCAGCCTGTGGGCAGAGTCCGAATCACTGCTGAAA
CCCTTGGCCAATGTGACGCTGACGTGCCAGGCCCACCTGGAGACTCCAGACTTCCAGCTG
TTCAAGAATGGGGTGGCCCAGGAGCCTGTGCACCTTGACTCACCTGCCATCAAGCACCAG
TTCCTGCTGACGGGTGACACCCAGGGCCGCTACCGCTGCCGCTCGGGCTTGTCCACAGGA
TGGACCCAGCTGAGCAAGCTCCTGGAGCTGACAGGGCCAAAGTCCTTGCCTGCTCCCTGG
CTCTCGATGGCGCCAGTGTCCTGGATCACCCCCGGCCTGAAAACAACAGCAGTGTGCCGA
GGTGTGCTGCGGGGTGTGACTTTTCTGCTGAGGCGGGAGGGCGACCATGAGTTTCTGGAG
GTGCCTGAGGCCCAGGAGGATGTGGAGGCCACCTTTCCAGTCCATCAGCCTGGCAACTAC
AGCTGCAGCTACCGGACCGATGGGGAAGGCGCCCTCTCTGAGCCCAGCGCTACTGTGACC
ATTGAGGAGCTCGCTGCACCACCACCGCCTGTGCTGATGCACCATGGAGAGTCCTCCCAG
GTCCTGCACCCTGGCAACAAGGTGACCCTCACCTGCGTGGCTCCCCTGAGTGGAGTGGAC
TTCCAGCTACGGCGCGGGGAGAAAGAGCTGCTGGTACCCAGGAGCAGCACCAGCCCAGAT
CGCATCTTCTTTCACCTGAACGCGGTGGCCCTGGGGGATGGAGGTCACTACACCTGCCGC
TACCGGCTGCATGACAACCAAAACGGCTGGTCCGGGGACAGCGCGCCGGTCGAGCTGATT
CTGAGCGATGAGACGCTGCCCGCGCCGGAGTTCTCCCCGGAGCCGGAGTCCGGCAGGGCC
TTGCGGCTGCGGTGCCTGGCGCCCCTGGAGGGCGCGCGCTTCGCCCTGGTGCGCGAGGAC
AGGGGCGGGCGCCGCGTGCACCGTTTCCAGAGCCCCGCTGGGACCGAGGCGCTCTTCGAG
CTGCACAACATTTCCGTGGCTGACTCCGCCAACTACAGCTGCGTCTACGTGGACCTGAAG
CCGCCTTTCGGGGGCTCCGCGCCCAGCGAGCGCTTGGAGCTGCACGTGGACGGACCCCCT
CCCAGGCCTCAGCTCCGGGCGACGTGGAGTGGGGCGGTCCTGGCGGGCCGAGATGCCGTC
CTGCGCTGCGAGGGACCCATCCCCGACGTCACCTTCGAGCTGCTGCGCGAGGGCGAGACG
AAGGCCGTGAAGACGGTCCGCACCCCCGGGGCCGCGGCGAACCTCGAGCTGATCTTCGTG
GGGCCCCAGCACGCCGGCAACTACAGGTGCCGCTACCGCTCCTGGGTGCCCCACACCTTC
GAATCGGAGCTCAGCGACCCTGTGGAGCTCCTGGTGGCAGAAAGCTGA
'''

seq2 = c2p.retrieve_base_sequence_from_fasta(fasta_data)
aa_before = c2p.translate_cds(seq2)

# Snp
print()
print("NM_130786.3:c.1481A>T, NM_130786.4:c.1481A>T, NP_570602.2:p.Glu494Val")
seq3 = c2p.apply_snp(seq2, 1481, 'A', 'T')
aa_after = c2p.translate_cds(seq3)
c2p.compare_sequence(aa_before, aa_after)

# Deletion
# rs770249611
print()
print("NM_130786.3:c.1375_1377del, NM_130786.4:c.1375_1377del, NP_570602.2:p.Phe459del")
seq3 = c2p.apply_del(seq2, 1375, 1377)
aa_after = c2p.translate_cds(seq3)
c2p.compare_sequence(aa_before, aa_after)

# rs149623806
print()
print("NM_130786.3:c.66_68del, NM_130786.4:c.66_68del, NP_570602.2:p.Ile23del")
seq3 = c2p.apply_del(seq2, 66, 68)
aa_after = c2p.translate_cds(seq3)
c2p.compare_sequence(aa_before, aa_after)

# rs1454635471
print(
    "NM_130786.3:c.22_23CT[1], NM_130786.4:c.22_23CT[1], NR_015380.2:n.1111_1112GA[1], NR_015380.1:n.1111_1112GA[1], NP_570602.2:p.Leu9fs")
seq3 = c2p.apply_del(seq2, 22, 23)
aa_after = c2p.translate_cds(seq3)
c2p.compare_sequence(aa_before, aa_after)

# rs1290624409
print(
    "NM_130786.4:c.47_56del, NP_570602.2:p.Gly16fs")
seq3 = c2p.apply_del(seq2, 47, 56)
aa_after = c2p.translate_cds(seq3)
c2p.compare_sequence(aa_before, aa_after)

# insertion
# rs1568555027
print(
    "NM_130786.4:c.121_122insA, NP_570602.2:p.Pro41fs")
seq3 = c2p.apply_ins(seq2, 121, "A")
aa_after = c2p.translate_cds(seq3)
c2p.compare_sequence(aa_before, aa_after)

実行結果

NM_130786.3:c.1481A>T, NM_130786.4:c.1481A>T, NP_570602.2:p.Glu494Val

NM_130786.3:c.1481A>T, NM_130786.4:c.1481A>T, NP_570602.2:p.Glu494Val
0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQL
0001 ............................................................
0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQL

0061 FKNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPW
0061 ............................................................
0061 FKNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPW

0121 LSMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNY
0121 ............................................................
0121 LSMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNY

0181 SCSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVD
0181 ............................................................
0181 SCSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVD

0241 FQLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELI
0241 ............................................................
0241 FQLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELI

0301 LSDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFE
0301 ............................................................
0301 LSDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFE

0361 LHNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAV
0361 ............................................................
0361 LHNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAV

0421 LRCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIFVGPQHAGNYRCRYRSWVPHTF
0421 ............................................................
0421 LRCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIFVGPQHAGNYRCRYRSWVPHTF

0481 ESELSDPVELLVAES*
0481 .............X..
0481 ESELSDPVELLVAVS*

NM_130786.3:c.1375_1377del, NM_130786.4:c.1375_1377del, NP_570602.2:p.Phe459del

0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQL
0001 ............................................................
0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQL

0061 FKNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPW
0061 ............................................................
0061 FKNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPW

0121 LSMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNY
0121 ............................................................
0121 LSMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNY

0181 SCSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVD
0181 ............................................................
0181 SCSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVD

0241 FQLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELI
0241 ............................................................
0241 FQLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELI

0301 LSDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFE
0301 ............................................................
0301 LSDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFE

0361 LHNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAV
0361 ............................................................
0361 LHNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAV

0421 LRCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIFVGPQHAGNYRCRYRSWVPHTF
0421 ......................................XXXXXXXXXXXXXXXXXXXXXX
0421 LRCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIVGPQHAGNYRCRYRSWVPHTFE

0481 ESELSDPVELLVAES*
0481 XXXXXXXXX.XXXXX
0481 SELSDPVELLVAES*

NM_130786.3:c.66_68del, NM_130786.4:c.66_68del, NP_570602.2:p.Ile23del

0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQL
0001 ......................XXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXX
0001 MSMLVVFLLLWGVTWGPVTEAAFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQLF

0061 FKNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPW
0061 XXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXXX
0061 KNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPWL

0121 LSMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNY
0121 XXXXXXXXXXXXXX.XXXXXXXXXXXXX.X.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0121 SMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNYS

0181 SCSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVD
0181 XXXXXXXXXXXXXXXXXXXXX.XX.X...XXXX.XXX.XXXXXXXXXXXXXXXXXXXXXX
0181 CSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVDF

0241 FQLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELI
0241 XXX.XXXXX.XXXX.XXXXXXX.XXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXX
0241 QLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELIL

0301 LSDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFE
0301 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.X.XXXXXXXXXXXXXXXX
0301 SDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFEL

0361 LHNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAV
0361 XXXXXXXXXXXXXXXXXXXX.XX.XXXXXXXXXXXXXX..XXXXXXXXXXXXXXXXXXXX
0361 HNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAVL

0421 LRCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIFVGPQHAGNYRCRYRSWVPHTF
0421 XXXXXXXXXXXXX.XXXXXXXXXXXXXXXX..XXXXXXXXXXXXXXXXXXXXXXXXXXXX
0421 RCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIFVGPQHAGNYRCRYRSWVPHTFE

0481 ESELSDPVELLVAES*
0481 XXXXXXXXX.XXXXX
0481 SELSDPVELLVAES*

NM_130786.3:c.22_23CT[1], NM_130786.4:c.22_23CT[1], NR_015380.2:n.1111_1112GA[1], NR_015380.1:n.1111_1112GA[1], NP_570602.2:p.Leu9fs

0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQL
0001 ........XXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0001 MSMLVVFLAVGCHLGPSDRSSHIL*DAAQPVGRVRITAETLGQCDADVPGPPGDSRLPAV

0061 FKNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPW
0061 XXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0061 QEWGGPGACAP*LTCHQAPVPADG*HPGPLPLPLGLVHRMDPAEQAPGADRAKVLACSLA

0121 LSMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNY
0121 .XX.X.XXXXXXXXXXX.X.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0121 LDGASVLDHPRPENNSSVPRCAAGCDFSAEAGGRP*VSGGA*GPGGCGGHLSSPSAWQLQ

0181 SCSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVD
0181 XXXXXXX.XXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXX
0181 LQLPDRWGRRPL*AQRYCDH*GARCTTTACADAPWRVLPGPAPWQQGDPHLRGSPEWSGL

0241 FQLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELI
0241 XXXX...XXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXX.XX.XXXXX
0241 PATARGERAAGTQEQHQPRSHLLSPERGGPGGWRSLHLPLPAA*QPKRLVRGQRAGRADS

0301 LSDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFE
0301 XXXXXXX.XXXXXXXXXXXXXXXXXX..XXX.XXXXX.XXXXXX.XXXXXXXXXXX..XX
0301 ER*DAARAGVLPGAGVRQGLAAAVPGAPGGRALRPGARGQGRAPRAPFPEPRWDRGALRA

0361 LHNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAV
0361 XXXXXXXXXXXXXXXXXXXXXXX.XX.XXXXXXXXXXX.XXXXXXXXXXX.XXXXX.XXX
0361 AQHFRG*LRQLQLRLRGPEAAFRGLRAQRALGAARGRTPSQASAPGDVEWGGPGGPRCRP

0421 LRCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIFVGPQHAGNYRCRYRSWVPHTF
0421 XXXXXXXXXXXXXXX.XXXXXXXXXXXXX.XXXXXXXXXXX.XXXXXXXXXXXXXX..XX
0421 ALRGTHPRRHLRAAARGRDEGREDGPHPRGRGEPRADLRGAPARRQLQVPLPLLGAPHLR

0481 ESELSDPVELLVAES*
0481 XXXXXXXXXXXXXXX
0481 IGAQRPCGAPGGRKL

NM_130786.4:c.47_56del, NP_570602.2:p.Gly16fs

0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQL
0001 ...............XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0001 MSMLVVFLLLWGVTWEKQPYFMRRSPACGQSPNHC*NPWPM*R*RARPTWRLQTSSCSRM

0061 FKNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPW
0061 XXXXXXXXXX..X.XXXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXX.
0061 GWPRSLCTLTHLPSSTSSC*RVTPRAATAAARACPQDGPS*ASSWS*QGQSPCLLPGSRW

0121 LSMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNY
0121 XXXXXXXXXXXXXXXXX..X..XXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX
0121 RQCPGSPPA*KQQQCAEVCCGV*LFC*GGRATMSFWRCLRPRRMWRPPFQSISLATTAAA

0181 SCSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVD
0181 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXX
0181 TGPMGKAPSLSPALL*PLRSSLHHHRLC*CTMESPPRSCTLATR*PSPAWLP*VEWTSSY

0241 FQLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELI
0241 XXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX.XXXX.XXXXXX
0241 GAGRKSCWYPGAAPAQIASSFT*TRWPWGMEVTTPAATGCMTTKTAGPGTARRSS*F*AM

0301 LSDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFE
0301 XXXXXXXX.XXXXXXXXXXXXXX.XXXXXXXXXX.XXXXXXXXXXXXXXXX.XXXXXXXX
0301 RRCPRRSSPRSRSPAGPCGCGAWRPWRARASPWCARTGAGAACTVSRAPLGPRRSSSCTT

0361 LHNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAV
0361 XXXXXXXXX.XXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXX.X
0361 FPWLTPPTTAASTWT*SRLSGAPRPASAWSCTWTDPLPGLSSGRRGVGRSWRAEMPSCAA

0421 LRCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIFVGPQHAGNYRCRYRSWVPHTF
0421 XXXXXXX.XXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXX.XXX.XXXXXXXXXXXXXX
0421 RDPSPTSPSSCCARARRRP*RRSAPPGPRRTSS*SSWGPSTPATTGAATAPGCPTPSNRS

0481 ESELSDPVELLVAES*
0481 XXX.XXXXXXXX
0481 SATLWSSWWQKA

NM_130786.4:c.121_122insA, NP_570602.2:p.Pro41fs

0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKPLANVTLTCQAHLETPDFQL
0001 ........................................X.XXXXXXXXXXXXXXXXXX
0001 MSMLVVFLLLWGVTWGPVTEAAIFYETQPSLWAESESLLKHLGQCDADVPGPPGDSRLPA

0061 FKNGVAQEPVHLDSPAIKHQFLLTGDTQGRYRCRSGLSTGWTQLSKLLELTGPKSLPAPW
0061 XXXXXXXXXXXXXXXXXXXXXXXX.XXX.XXXXXX..XXXXXXXXXXXXXXXX.X.XXXX
0061 VQEWGGPGACAP*LTCHQAPVPADG*HPGPLPLPLGLVHRMDPAEQAPGADRAKVLACSL

0121 LSMAPVSWITPGLKTTAVCRGVLRGVTFLLRREGDHEFLEVPEAQEDVEATFPVHQPGNY
0121 XXXXXXXXXX.XXXXXXXXXXXXX.XX.XXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXX
0121 ALDGASVLDHPRPENNSSVPRCAAGCDFSAEAGGRP*VSGGA*GPGGCGGHLSSPSAWQL

0181 SCSYRTDGEGALSEPSATVTIEELAAPPPPVLMHHGESSQVLHPGNKVTLTCVAPLSGVD
0181 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXX
0181 QLQLPDRWGRRPL*AQRYCDH*GARCTTTACADAPWRVLPGPAPWQQGDPHLRGSPEWSG

0241 FQLRRGEKELLVPRSSTSPDRIFFHLNAVALGDGGHYTCRYRLHDNQNGWSGDSAPVELI
0241 XXXXXXXXXXXXXXXXXX.XXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXX
0241 LPATARGERAAGTQEQHQPRSHLLSPERGGPGGWRSLHLPLPAA*QPKRLVRGQRAGRAD

0301 LSDETLPAPEFSPEPESGRALRLRCLAPLEGARFALVREDRGGRRVHRFQSPAGTEALFE
0301 XXXXXXXXXXXX.XXXXXXX.XXXXXXXXX.XXXXXXXXXX.XXXXXX.XX.XXXXXXXX
0301 SER*DAARAGVLPGAGVRQGLAAAVPGAPGGRALRPGARGQGRAPRAPFPEPRWDRGALR

0361 LHNISVADSANYSCVYVDLKPPFGGSAPSERLELHVDGPPPRPQLRATWSGAVLAGRDAV
0361 XXXXXXXXXXXXXXXXXXXXXX.X.XXXXXX.XXXXXXX.XXXXXXXXXXXXXXX.XXXX
0361 AAQHFRG*LRQLQLRLRGPEAAFRGLRAQRALGAARGRTPSQASAPGDVEWGGPGGPRCR

0421 LRCEGPIPDVTFELLREGETKAVKTVRTPGAAANLELIFVGPQHAGNYRCRYRSWVPHTF
0421 XXXX.XX.XXXXXXXXX.XXXXXXXXXX.XXXXXXXXXXX.XXXXXXXXXXXXXXXXXXX
0421 PALRGTHPRRHLRAAARGRDEGREDGPHPRGRGEPRADLRGAPARRQLQVPLPLLGAPHL

0481 ESELSDPVELLVAES*
0481 XXXXXX.XXXXXXXXX
0481 RIGAQRPCGAPGGRKL

注意事項

cdsに変異を加えた場合に推測されるアミノ酸配列はあくまでも参考値
最低でも次の条件が成立している場合にしか利用できない

  • 変異がcds内の単一のexon内に限定されている
  • exon内に生じた変異がexon, intronの境界に影響を与えない

上記がどのような条件の元に成立するのかはわからない...

今回はここまで:smile:

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0