의생명정보알고리즘 대학 강의 정리

2025. 3. 20. 20:48·생명정보학/대학 강의
Reference :
- 건국대학교 의생명정보알고리즘 강의 / 첨단바이오공학부 김재범 교수님

[2주차]

🔬 1. 게놈 어셈블리 개요

  • 게놈 어셈블리는 짧은 DNA 서열(Reads)을 조합하여 전체 게놈을 복원하는 과정.
  • 3단계의 과정으로 진행됨:
    1. 리드 → 컨티그 (Reads → Contigs)
    2. 컨티그 → 스캐폴드 (Contigs → Scaffolds)
    3. 스캐폴드 → 크로모좀 (Scaffolds → Chromosomes)

📌 1단계: 리드 → 컨티그

목표: 짧은 리드를 겹치는 부분(오버랩)을 이용해 긴 시퀀스(Contig)를 만드는 과정

  • 리드(Reads): DNA 시퀀싱의 결과물로 나온 짧은 서열 조각.
  • 오버랩(Overlap) 이용: 리드 간 겹치는 부분을 찾아 연결하여 긴 연속 서열(Contig) 생성.
  • 싱글 엔드 리드(Single-End Read) 사용:
    • 개별 리드만 활용하여 컨티그를 생성.
    • 쌍 정보(페어드 엔드 또는 메이트 페어)를 활용하지 않음.

✅ 핵심 개념:

  • 오버랩 정보를 이용해 리드를 연결하여 컨티그를 만듦.
  • 싱글 엔드 리드만을 이용하여 진행.

🛠️ 2단계: 컨티그 → 스캐폴드

목표: 컨티그를 더 길게 연결하여 크로모좀 구조를 유추하는 과정

  • 페어드 엔드 리드 (Paired-End Read), 메이트 페어 리드 (Mate-Pair Read) 활용:
    • 쌍을 이루는 리드 정보를 사용하여 컨티그 사이의 상대적 위치와 거리 추정.
  • 스캐폴드(Scaffold): 컨티그를 상대적인 위치를 반영해 연결한 더 긴 서열.
  • N (뉴클레오타이드 미확정 부분) 삽입:
    • 컨티그 간 연결이 불확실한 부분을 "N"으로 채워넣음.

✅ 핵심 개념:

  • 페어드 엔드 & 메이트 페어 리드를 활용하여 컨티그를 연결.
  • 컨티그 간 정확한 뉴클레오타이드 서열을 모르는 부분은 "N"으로 채움.
  • 스캐폴드 수준까지 이어붙이면 연구용으로 활용 가능.

🧩 3단계: 스캐폴드 → 크로모좀

목표: 크로모좀 수준의 유전체 서열을 완성하는 과정

  • 스캐폴드를 정렬하여 최종적인 크로모좀 서열을 구축.
  • 추가 데이터(Additional Data) 필요:
    • 실험적 방법(PCR 등)이나 생물정보학적 기법 활용.
    • 비용과 시간이 많이 들기 때문에 보통 스텝 2(스캐폴드)까지만 진행.

✅ 핵심 개념:

  • 스캐폴드를 추가적으로 정렬하여 크로모좀 수준으로 확장.
  • 비용 문제로 대부분 스텝 2에서 종료 → 연구 목적의 드래프트 게놈(Draft Genome)으로 활용.

📊 전체 과정 요약

단계 과정 활용 기술 결과물

1단계 리드 → 컨티그 싱글 엔드 리드, 오버랩 분석 컨티그(Contig)
2단계 컨티그 → 스캐폴드 페어드 엔드/메이트 페어 리드, 시퀀스 정렬 스캐폴드(Scaffold)
3단계 스캐폴드 → 크로모좀 추가 데이터 활용 크로모좀(Chromosome)

📌 교수님 강의에서 강조한 핵심 사항

  1. 리드(Reads)는 겹치는 부분을 찾아 컨티그(Contig)로 연결됨.
  2. 컨티그 간 연결은 페어드 엔드(Paired-End) 및 메이트 페어(Mate-Pair) 리드를 활용.
  3. 컨티그 간 연결이 불확실한 부분은 "N"으로 채워 스캐폴드를 생성.
  4. 스캐폴드까지 완성되면 연구용 드래프트 게놈으로 활용 가능.
  5. 추가 비용 문제로 크로모좀 수준(스텝 3)까지 완성하는 경우는 적음.

🔍 다음 강의 예고

  • 알고리즘 학습 및 Python을 활용한 게놈 어셈블리 구현 실습 진행 예정.

🧬 1. 센트럴 도그마 (Central Dogma)

  • DNA → RNA → Protein으로 유전정보가 전달되는 생물학적 과정.
  • 트랜스크립션 (Transcription): DNA에서 RNA로 전환.
  • 트랜스레이션 (Translation): RNA에서 단백질로 전환.
  • 유전자 발현이 같은 DNA를 가진 세포에서도 환경이나 시간에 따라 다르게 조절됨.
  • 유전자 조절 (Gene Regulation):
    • 트랜스크립션 단계에서 주로 조절됨.
    • **트랜스크립션 팩터 (Transcription Factor)**가 프로모터 (Promoter) 영역에 결합해야 전사 가능.

✅ 핵심 개념:

  • 특정 유전자가 어디에서, 언제, 얼마나 발현될지 조절하는 과정이 중요.
  • 같은 유전정보를 가진 세포라도 기능이 다를 수 있음 (예: 근육세포 vs 신경세포).

📊 2. 유전체 시퀀싱 (Genome Sequencing)

  • 유전체는 ACGT의 디지털 서열로 저장됨.
  • 실제 시퀀스 데이터에는 N (확인되지 않은 뉴클레오타이드) 도 포함됨.
  • 인간 게놈 프로젝트:
    • 2001년: 최초의 인간 게놈 시퀀스 발표 (N이 많았음).
    • 2022년: 완전한 인간 게놈 시퀀스 발표 (N 없이 모든 염기서열 확인).
    • 이후 지속적으로 업그레이드 중.

✅ 핵심 개념:

  • 시퀀싱 데이터에는 불확실한 부분이 존재할 수 있음 (N으로 표기).
  • 기술 발전을 통해 점점 더 정확한 유전체 정보를 확보.

🛠️ 3. 차세대 시퀀싱 (Next Generation Sequencing, NGS)

  • NGS의 특징:
    • 병렬 시퀀싱 (Parallel Sequencing): 여러 개의 DNA 조각을 동시에 시퀀싱.
    • 고속 & 저비용: 대량의 데이터를 빠르게 분석 가능.
  • NGS 기술의 두 가지 유형:
    1. 2세대 시퀀싱 (Second-Generation Sequencing)
      • 짧은 리드(Short Reads) 생성.
      • 대표적인 기술: Illumina 시퀀싱 (가장 널리 사용됨).
    2. 3세대 시퀀싱 (Third-Generation Sequencing)
      • 긴 리드(Long Reads) 생성.
      • 대표적인 기술: PacBio, Oxford Nanopore.

✅ 핵심 개념:

  • NGS 기술로 유전체를 읽어내지만 짧은 조각들(Reads)로 나오므로 조립 과정이 필요.
  • 긴 리드(Long Reads)는 분석이 쉽지만 오류가 많을 수 있음.

🔬 4. 시퀀싱 데이터 유형

  • 싱글 엔드 리드 (Single-End Read)
    • DNA 한쪽 끝에서만 읽음.
    • 상대적으로 분석이 단순하지만, 위치 정보를 추정하기 어려움.
  • 페어드 엔드 리드 (Paired-End Read)
    • DNA 양쪽 끝에서 읽음.
    • 쌍을 이룬 리드 간의 거리 정보를 활용하여 어셈블리 향상.
  • 메이트 페어 리드 (Mate-Pair Read)
    • 더 긴 거리에서 읽으며, 유전체 조립에 도움.
    • 페어드 엔드와 방향성이 다름:
      • 페어드 엔드: Forward (5' → 3') & Reverse (3' → 5')
      • 메이트 페어: Reverse (3' → 5') & Forward (5' → 3')

✅ 핵심 개념:

  • 페어드 엔드 & 메이트 페어 리드를 활용하면 유전체 조립이 더 정확해짐.
  • 리드 방향성과 거리 정보를 활용하는 것이 중요.

🧩 5. 유전체 어셈블리 (Genome Assembly)

짧은 시퀀싱 데이터(Reads)를 조합하여 원래의 유전체 서열을 복원하는 과정.

  • 왜 필요한가?
    • 시퀀싱 결과는 짧은 조각들(Reads) 로 나오기 때문.
    • 전체 유전체를 한 번에 읽을 수 없으므로 조립 과정이 필요함.

⚙️ 어셈블리 과정

  1. 랜덤 프래그멘테이션 (Random Fragmentation)
    • DNA가 무작위로 조각남.
    • 여러 개의 유전체 복사본에서 다양한 위치에서 잘림.
  2. 오버랩 분석 (Overlap Analysis)
    • 겹치는 부분(Overlap)을 이용하여 긴 시퀀스(Contig) 생성.
  3. 컨티그 → 스캐폴드 확장 (Contig to Scaffold)
    • 페어드 엔드 & 메이트 페어 리드를 활용해 컨티그 연결.
    • 연결이 불확실한 부분은 N으로 채움.

✅ 핵심 개념:

  • 짧은 조각들을 겹치는 정보(Overlap)로 조립하여 원래 유전체 서열을 복원.
  • 멀티플 카피가 존재하기 때문에 어셈블리가 가능 (한 개의 복사본만 있으면 불가능).

📊 전체 과정 요약

단계 과정 활용 기술 결과물

센트럴 도그마 DNA → RNA → 단백질 유전자 조절 (Regulation) 특정 유전자 발현
유전체 시퀀싱 DNA 염기서열 분석 NGS (차세대 시퀀싱) 짧은 리드(Reads)
리드 유형 싱글 엔드 / 페어드 엔드 / 메이트 페어 시퀀싱 기술 서로 다른 방향성 & 거리 정보
어셈블리 과정 랜덤 프래그멘테이션 → 오버랩 분석 Overlap, Paired-End 컨티그(Contigs), 스캐폴드(Scaffold)
최종 목표 크로모좀 레벨 유전체 구축 추가 데이터 활용 완전한 게놈 서열

📌 교수님 강의에서 강조한 핵심 사항

  1. 유전체(Genome)는 디지털 서열 (ACGT) 형태로 저장됨.
  2. NGS는 대량의 짧은 리드(Reads)를 생성하며, 유전체 조립(Assembly)이 필수적.
  3. 싱글 엔드, 페어드 엔드, 메이트 페어 리드의 차이를 이해해야 함.
  4. 짧은 리드들은 서로 겹치는 부분(Overlap)을 이용해 조립 가능.
  5. 유전체 조립을 통해 크로모좀 수준의 게놈 정보를 완성.

🔍 다음 강의 예고

  • Python을 활용한 유전체 데이터 분석 실습 진행 예정.
  • 유전체 데이터 파일(Fasta, Fastq) 다루기.
  • NGS 데이터를 활용한 실제 분석.

📌 최종 요약:

유전체 분석은 짧은 시퀀싱 데이터를 조합하여 원래 유전체 서열을 복원하는 과정이다. 이를 위해 NGS 기술과 다양한 리드 데이터를 활용하며, 최종적으로 크로모좀 수준의 유전체를 구축하는 것이 목표이다.


[3주차]

🧬 시퀀스 얼라인먼트 요약 🧩

1. 시퀀스 얼라인먼트란? 🧐

  • 서열 정렬을 의미하며, DNA, RNA, 단백질 시퀀스를 비교하여 진화적 연관성을 분석하는 방법이에요! 🧬✨
  • 입력된 시퀀스를 2D 테이블 형식으로 정렬해야 하며, 길이를 맞추기 위해 **갭(-)**을 추가할 수도 있어요! 📊

2. 시퀀스 얼라인먼트의 두 가지 접근 방식 💡

1️⃣ 컴퓨터 사이언스적 접근 🖥️

  • 시퀀스를 단순한 데이터로 보고, 최적의 정렬 알고리즘을 통해 일관된 결과를 도출! 📈
    2️⃣ 생물학적 접근 🦠
  • 시퀀스를 진화적 맥락에서 분석하여, 에볼루션(진화) 과정을 반영한 정렬이 필요! 🌱

3. 시퀀스 비교의 핵심 개념 🏆

  • 호몰로거스(Homologous) 시퀀스 🧬
    • 공통 조상에서 유래한 시퀀스! (즉, 같은 뿌리를 가진 서열들 🌳)
  • 올소로그(Orthologous) vs 패럴로그(Paralogous) 🤔
    • 올소로그: 다른 종에서 유래했지만, 공통 조상에서 분기된 유사 서열 🦍➡️🦁
    • 패럴로그: 같은 종 내에서 중복(duplication) 발생하여 생긴 유사 서열 🧬➗

4. 시퀀스 변이의 종류 🌀

✅ 컨저베이션(Conservation) 🛡️

  • 서열이 변하지 않고 그대로 보존됨
    ✅ 서브스티튜션(Substitution) 🔄
  • 특정 염기가 다른 염기로 변경됨 (A → G)
    ✅ 인서션(Insertion) ➕
  • 원래 없던 서열이 새롭게 추가됨
    ✅ 딜리션(Deletion) ➖
  • 원래 존재하던 서열이 사라짐

5. 진화적 관계를 고려한 얼라인먼트 🏗️

  • 갭(-) 기호는 에볼루션 과정에서의 삽입/삭제를 반영
  • 서로 다른 종에서 동일한 조상에서 유래한 **뉴클레오타이드(염기)**를 찾아 같은 컬럼에 정렬
  • 진화적 시간이 길수록 변화가 많이 일어나므로 얼라인먼트 컬럼에 차이가 클 수 있음! ⏳🔬

6. 완벽한 얼라인먼트는 가능할까? 🤯

  • 현실적으로 모든 변이를 정확히 추적하는 것은 불가능 🙅
  • 따라서 진화적 가능성이 높은 시나리오를 기반으로 정렬하여 최적의 얼라인먼트를 찾는 것이 중요! 🏆

✨ 결론 🏁
시퀀스 얼라인먼트는 단순한 데이터 정렬이 아니라, 진화 과정에서 어떻게 변해왔는지를 고려해야 해요! 🌍
컴퓨터 과학과 생물학을 접목해 최적의 알고리즘을 설계하는 것이 바이오인포매틱스의 핵심입니다! 🔥


🧬 시퀀스 얼라인먼트 추가 요약 🧩

1. True Alignment(진짜 얼라인먼트)란? 🤔

  • True Alignment는 진화 과정에서 실제로 발생한 변화를 100% 반영한 얼라인먼트
  • 하지만 현실적으로 우리는 **모든 진화 과정(에볼루션 히스토리)**을 알 수 없어요! 😭
  • 따라서, True Alignment를 직접 만들 수는 없고, 최대한 근사한 얼라인먼트를 예측해야 해요. 🔎

2. 얼라인먼트 예측 방법 🌟

✅ Simple Approach (간단한 방법) 📊

  • 가능한 모든 얼라인먼트 경우의 수를 생성한 뒤,
  • 그중에서 True Alignment와 가장 비슷할 것 같은 얼라인먼트를 선택! 🎯
  • 하지만 경우의 수가 많아질수록 계산량이 커짐 😵‍💫

✅ Scoring Scheme (점수 매기는 방법) 🎯

  • 얼라인먼트의 각 컬럼에 점수를 부여하고,
  • 점수가 가장 높은 얼라인먼트를 **Optimal Alignment (최적의 얼라인먼트)**로 선택! 🏆
  • True Alignment는 아니지만 가장 진짜에 가까운 얼라인먼트를 찾는 방법

3. Optimal Alignment(최적 얼라인먼트)란? 🔥

  • True Alignment를 모르므로 가능한 얼라인먼트 중 가장 점수가 높은 것을 선택
  • True Alignment ≠ Optimal Alignment (같을 수도 있지만, 보장되지 않음 ❌)
  • Scoring Scheme이 중요 → 잘못된 점수 기준을 설정하면 엉뚱한 얼라인먼트가 뽑힐 수도 있음 🚨

4. 시퀀스 얼라인먼트의 종류 🏷️

1️⃣ Pairwise vs Multiple Alignment 👥👥👥

  • Pairwise Alignment (페어와이즈 얼라인먼트): 2개의 시퀀스 비교
  • Multiple Sequence Alignment (멀티플 얼라인먼트): 3개 이상의 시퀀스 비교

2️⃣ Global vs Local Alignment 🌎🔍

  • Global Alignment (글로벌 얼라인먼트): 전체 시퀀스를 비교 (서열 전체 포함)
  • Local Alignment (로컬 얼라인먼트): 부분 서열만 비교 (일부만 포함)

🔗 예시:

  • Pairwise Global Alignment: 두 시퀀스를 처음부터 끝까지 비교
  • Pairwise Local Alignment: 두 시퀀스에서 일치하는 부분만 비교
  • Multiple Global Alignment: 여러 시퀀스를 전체 정렬
  • Multiple Local Alignment: 여러 시퀀스에서 유사한 영역만 정렬

✨ 결론 🏁

💡 우리는 True Alignment를 알 수 없지만, Optimal Alignment를 찾을 수 있다!
💡 Scoring Scheme을 잘 설계하면 True Alignment와 유사한 결과를 얻을 확률이 높아진다!
💡 시퀀스 개수와 비교 방식(글로벌 vs 로컬)에 따라 얼라인먼트 방식이 달라진다!

🔥 다음 목표?

  • Scoring Scheme(점수 매기는 방법) 구체적으로 배우기!
  • 어떤 기준으로 얼라인먼트를 평가하는지 학습하기!

[4주차]

🧬 1. 시퀀스 분류

1-1. 시퀀스 구성 🧩

  • 뉴클레오타이드의 형태적 특성과 중요성 설명 💡
  • 뉴클레오타이드는 어몰로거스(homologous) 요소로 구성됨 🧠
  • 어몰로거스는 동일하거나 다른 스페시어지(species)에서 유래함 🌱🦠
  • 동일 스페시어지 내에서 유래한 경우는 👉 "뉴클레오타이드 선전"
  • ⚠️ 동일 시퀀스 내에서는 뉴클레오타이드 배열을 보존해야 함! 🧷

1-2. 스페시어지 내 뉴클레오타이드 선정 🧐

  • 스페시어지 내 뉴클레오타이드 선정은 매우 중요함 💎
  • 인서션/리션이 생기면 👉 새로운 기호로 표시 ✍️
  • 시퀀스 순서를 고려하여 뉴클레오타이드를 선정함 🔢
  • 새로운 기호 'del'은 특정 스페시어지에서만 유래한 경우 사용 📌
  • 다른 뉴클레오타이드로 바뀌는 경우, 대응되는 것 찾기 🎯

1-3. 수정된 목표 설정 🎯

  • 🔁 “옵티멀 얼라인먼트” 는 불가능하므로, 오프닝 얼라인먼트(opening alignment) 를 목표로 함
  • 뉴클레오타이드를 단위로 분류하여 얼라인먼트 수행 🧱
  • ✨ 스코어링 스킴(scoring scheme) 으로 점수를 매겨 최고 점수의 얼라인먼트 선택
  • 오프닝 얼라인먼트가 슈어 얼라인먼트(sure alignment)와 비슷하게 디자인되도록 함 🎨
  • 두 얼라인먼트 간의 차이를 고려하여 최적의 디자인 시도 ⚖️

📊 2. 얼라인먼트 성적 평가 방식 이해

2-1. 성적 평가 방식 이해 🧠

  • 스토어링 스킴(scoring scheme) 은 얼라인먼트의 점수를 계산하는 방식 ✏️
  • ✅ 매치된 컬럼 수가 많을수록 점수 ⬆️
  • ❌ 미스매치된 컬럼이 많으면 점수 ⬇️
  • 스코어링 방식에 따라 옵티멀 얼라인먼트가 달라짐 🧭

2-2. 적용 가능성 분석 🔍

  • 스토어링 스킴을 활용하여 얼라인먼트 점수 계산 가능 📐
  • ✅ 미스매치 점수 < 매치 점수 → 점수 높음 📈
  • ❌ 매치 점수 < 미스매치 점수 → 점수 낮음 📉
  • 생물정보학에서 다양한 모델에 활용 가능 💻🧬

2-3. 문제점 및 개선 방안 ⚠️🛠️

  • 매치/미스매치 점수 차이가 너무 크면 문제 발생 ❗
    • 예: 1 vs 0 → 매치만 반영되어 점수 왜곡 가능 🧨
  • 💡 점수 차이를 1:3 이하로 제한하면 더 공정한 평가 가능! ⚖️
  • 균형 잡힌 스코어링으로 미스매치의 영향을 최소화함 🎯

🧮 3. 얼라인먼트 점수 계산

3-1. 얼라인먼트 점수 제도 📏

  • 각 얼라인먼트 컬럼에 👉 매치/미스매치 점수 부여
  • ✅ 매치 점수가 크면 좋은 얼라인먼트 👍
  • ❌ 매치 점수가 작으면 나쁜 얼라인먼트 👎
  • ❗ 갭(gap)이 있으면 -1점 차감 ➖
  • 얼라인먼트 타입에 따라 점수 차등 부여 🧷

3-2. 점수 계산 방법 🧠

  • 얼라인먼트 개수에 따라 점수 비율이 달라짐 📊
  • 컬럼이 3개 이상이면 각자 점수 따로 계산 후 합산 🧮
  • 개별 점수를 전부 반영한 뒤, 전체 점수로 조정함 🔄

3-3. 점수 계산 결과 🧾

  • 얼라인먼트 수에 따라 점수 비율이 조정됨
  • 갭이 많은 경우, 점수에서 차감되며 ❗
  • ✅ 매치가 많고 미스매치/갭이 적을수록 좋은 점수 획득 🌟
  • 📌 갭 먼저 계산하고, 나머지를 차감하는 방식 사용

[5주차]

https://www.ncbi.nlm.nih.gov/

 

National Center for Biotechnology Information

 

www.ncbi.nlm.nih.gov

 

https://genome.ucsc.edu/

 

UCSC Genome Browser Home

Meetings and Workshops: Come see us in person! Biocuration 2025 -- Kansas City, Missouri. April 7-9, 2025 CSHL Biology of Genomes -- Cold Spring Harbor, NY. May 6-10, 2025 ESHG: European Human Genetics -- Milan, Italy. May 24-27, 2025. Visit us at booth 20

genome.ucsc.edu

=> 유전체 정보 검색 사이트


🐍 1. 랭귀지와 파이썬

📘 1-1. 랭귀지와 파이썬 이해

  • 프로그래밍 언어인 파이썬을 이용하여 시퀀스를 생성하는 방법을 소개함 🧬
  • (중요) 시퀀스 생성을 위해서는 프로그래밍 언어 파이썬의 인터프리터와 실행 도구인 인터프린터를 알아야 함 🛠️
  • 인터프리터는 파이썬 프로그램의 실행을 도와주는 프로그램으로, 파이썬의 경우 파이썬 인터프리터를 사용함 🖥️
  • 파이썬 인터프리터는 프로그래밍 언어 명령어를 파이썬 프로그램이 이해할 수 있는 규칙에 따라 해석함 🔍
  • 파이썬의 경우, 파이썬 프로그램 파일을 작성한 후 인터프리터를 통해 실행되어야 함 ▶️

🖥️ 1-2. 파이썬 프로그램 실행 방법

  • 파이썬 프로그램은 텍스트 형식의 명령어로 작성되며, 실행 도구인 인터프린터를 통해 명령을 내리면 실행됨 📄
  • 파이썬 프로그램 실행은 인터프린터 모드와 논 인터프린터 모드로 나뉨 ⚙️
  • 인터프린터 모드는 파이썬 프로그램 파일을 읽어 명령을 내리고, 논 인터프린터 모드는 명령을 한 번에 처리하는 방식임 💡
  • 논 인터프린터 모드에서는 파이썬의 인터프리터 이름은 파이썬, 자바의 컴파일러 이름은 쌍팔함 🧾
  • 파이썬의 경우 인터프리터 이름은 파이썬, 자바의 컴파일러 이름은 쌍팔함 ☕

⚙️ 1-3. 인터프린터와 실행 도구

  • 파이썬은 인터프린터와 함께 사용되는 인터프린터인 파이썬 인터프리터를 사용함 🔁
  • 파이썬 인터프리터는 파이썬 프로그램 파일의 명령을 처리하며, 명령어를 인터프린터가 해석함 💬
  • 인터프린터는 파이썬 프로그램의 실행을 돕는 도구로, 실행 도구인 인터프린터와 함께 사용됨 🧰
  • 파이썬의 경우 파이썬 인터프리터, 자바의 경우 컴파일러를 사용하여 실행을 돕는 인터프린터임 💾
  • 파이썬의 경우 인터프린터의 명령어 처리를 통해 명령을 내리고, 자바의 경우 컴파일러가 명령어를 처리하여 실행을 실행함 🚀

🧪 2. 파이썬 실행 모드

🧮 2-1. 인터랙티브 모드

  • 인터랙티브 모드에서 프로그램의 다양한 기능을 한 줄씩 실행함 📏
  • 계산기처럼 한 번에 짧은 구문을 실행하고 결과를 바로 활용할 수 있음 🔢
  • 사용 종료 시 컨트롤 키와 'dp'를 함께 사용함 ⌨️
  • 인터랙티브 모드의 다양한 사용법을 제공함 📚
  • (중요) 긴 크기의 실제 프로그램 코드를 만들 때 인터랙티브 모드를 사용함 🧾

💻 2-2. 실행 방법

  • 실행을 도와주는 프로그램의 도움을 받아야 함 🤝
  • 인터프레이터를 통해 파이썬 프로그램의 실행 편도를 제공함 📍
  • 파이썬 프로그램을 실행하며 패스를 붙여줌 🗂️
  • 프로그램 파일에 프로그램 이름을 포함시킴 🏷️
  • 파이썬 실행을 위한 주소를 포함시킴 🌐

🔁 2-3. 실행 과정

  • 실행 가능한 파일이 된 후, 커맨드 보드로 전송됨 🖱️
  • 프로그램의 실행 파일을 지정함 📌
  • 실행 파일을 열고 프로그램을 실행함 📤
  • 프로그램 실행 시 파이썬 실행 편도를 추가함 ➕
  • 프로그램 실행 권한을 부여함 (c제곱 커맨드에 'x'를 더함) 🧾

🧬 3. 인간 유전체 시퀀스 분석

🔍 3-1. 유전체 시퀀스의 이해

  • 유전체 시퀀스 분석에 사용되는 알라이언스, mim 등의 기술에 대해 설명함 🧫
  • (중요) 시퀀스의 특정 주소를 클릭하면 그 주소에 따른 빅테일 정보를 제공함 📍
  • 주인들을 찾은 후 해당 주인에 대한 정보를 제공하는 페이지를 이용함 🔗
  • 분석이 진행되면서 크로모시멘의 변화가 발생하며 개수와 길이 등이 변함 📈
  • (중요) 주인에 대한 정보와 시퀀스 정보를 가공해서 표로 정리함 📊

🧠 3-2. 시퀀스 분석의 세부 단계

  • 시퀀스 분석에서 필요한 정보들을 추출해서 정리함 📑
  • 분석 결과로 얻어진 정보를 바탕으로 크로모좀의 변화를 추측함 🔄
  • 크로모좀의 특정 위치와 크로모좀의 특정 성질을 판별함 🧭
  • (중요) 주인에 대한 정보와 시퀀스 정보를 가공해서 추출함 🛠️
  • 크로모좀에 존재하는 유전자 정보를 분석함 🧬

🧩 3-3. 어셈블리 및 위치 정보

  • (중요) 크로모좀에 존재하는 유전자 정보를 어셈블리(=주인의 DNA 구성)를 통해 분석함 🧱
  • 어셈블리가 다르면 크로모좀의 위치 체계가 완전히 달라질 수 있음 🔁
  • 특정 주인에 대한 위치 정보를 알고 싶을 때는 어셈블리 기준을 언급해야 함 📌
  • 시퀀스 데이터베이스에 저장된 시퀀스 중 일부를 대표하는 시퀀스 정보를 이용함 🗃️
  • 유전체 시퀀스의 위치 정보를 추출하기 위해 컴플리먼트 정보를 사용함 🧮

🧬 4. NCBI를 이용한 유전체 시퀀스 추출

🔍 4-1. NCBI사이트를 이용한 시퀀스 추출

  • NCBI사이트를 이용하여 특정 준의 시퀀스를 추출하는 방법을 설명함 🖥️
  • 이 방법은 특정 인덱스를 제공하여 해당 시퀀스를 얻도록 함 🔢
  • 이 과정에서 준의 시퀀스가 상단에 표시되고, 시작과 끝 좌표가 함께 제공됨 📍
  • (중요) 시퀀스 추출 과정에서 이전 연구가 잘못된 경우, 주의하여 다시 진행해야 함 ⚠️
  • 해당 과정은 준 시퀀스, 준 알레르기 시퀀스, 알레르기 시퀀스 세 가지 유형으로 나뉨 🧩

📏 4-2. 시퀀스와 좌표의 해석

  • (중요) 시퀀스의 각 요소는 특정 어셈블리에 속해있는지에 따라 다르게 해석됨 🧠
  • 시퀀스에 대한 좌표는 준 시퀀스와 준 알레르기 시퀀스에서 동일하게 취급됨 🧬
  • 각 시퀀스에는 어셈블리에 대한 정보가 추가로 표시됨 🗂️
  • 이 정보를 통해 특정 시퀀스를 생성한 어셈블리의 정보를 얻을 수 있음 🔍
  • NCBI사이트에서 제공하는 좌표는 준 시퀀스에서의 위치를 정확히 지정함 🎯

📤 4-3. 실제 시퀀스와 추출 방법

  • 실제 시퀀스를 얻기 위해서는 NCBI사이트에서의 좌표를 활용해야 함 📌
  • (중요) 이 과정에서 좌표와 시퀀스 정보를 함께 사용해야 함 🔁
  • 시퀀스와 좌표 모두 원하는 시퀀스를 얻기 위해 필요한 정보임 ✅
  • (중요) 이 정보들을 제공받기 위해서는 특정 어셈블리에 속해있는지 확인해야 함 🧾
  • 이 과정에서 시퀀스의 시작과 끝 좌표가 중요한 정보로 사용됨 ⏩

🧪 5. DNA 시퀀스

🧭 5-1. 시퀀스와 좌표 수정

  • (중요) 시퀀스에서 인디펜던트나 어셈블리의 시작 위치를 표시해야 함 🧷
  • 시퀀스의 시작과 끝 좌표를 자동 입력할 수 있음 ✍️
  • HDB의 기준 좌표를 수정하여 특정 시퀀스를 볼 수 있음 🔍
  • 선택한 시퀀스의 시작과 끝 좌표를 수정하여 다양한 시퀀스를 볼 수 있음 🔄
  • 큰 좌표값을 넣어 주면 뒷부분의 시퀀스도 볼 수 있음 🔢

🛠️ 5-2. 커스터마이즈 뷰 옵션

  • 디스플레이 옵션에서 "쇼 리볼스 컴블리먼트" 체크 가능 🔘
  • 컴플리먼트 옵션을 제거하면 "리버스 컴플리먼트" 옵션을 사용하여 시퀀스를 볼 수 있음 🔁
  • 컴플리먼트 표시 시, "컴플리먼트" 체크가 되면 해당 시퀀스를 가져와야 함 📩
  • 체크되지 않은 시퀀스를 볼 때는 해당 시퀀스를 가져와야 함 📤
  • 좌표를 수정하여 다른 시퀀스를 볼 수도 있음 🧬

📤 5-3. 시퀀스 추출

  • 업스트림과 다운스트림의 위치 차이를 이해해야 함 🔄
  • 시퀀스를 추출할 때, 컴플리먼트 표시 여부에 따라 좌표가 달라짐 📐
  • 이쪽 주인의 업스트림 방향과 반대쪽 주인의 업스트림 방향이 다름 ↔️
  • (중요) 시퀀스를 추출할 때, 리버스 컴플리먼트 체크하고 업데이트 해야 함 ✅
  • 시퀀스의 좌표와 업스트림 방향을 수정하여 원하는 시퀀스를 추출할 수 있음 🎯
저작자표시 (새창열림)

'생명정보학 > 대학 강의' 카테고리의 다른 글

[의생명정보알고리즘] 과제 PA2 실습  (0) 2025.05.08
의생명정보알고리즘 예상 문제 정리  (0) 2025.04.24
의생명정보알고리즘 중간고사 정리  (0) 2025.04.14
[의생명정보알고리즘] Pairwise Alignment 점수 계산 프로그램 실습  (0) 2025.04.03
의생명정보알고리즘 OT (의생명정보학)  (0) 2025.03.05
'생명정보학/대학 강의' 카테고리의 다른 글
  • 의생명정보알고리즘 예상 문제 정리
  • 의생명정보알고리즘 중간고사 정리
  • [의생명정보알고리즘] Pairwise Alignment 점수 계산 프로그램 실습
  • 의생명정보알고리즘 OT (의생명정보학)
smile blog
smile blog
건국대 첨단바이오공학부 & 컴퓨터공학부 BT & IT 기술로 희망을 꿈 꿉니당
  • smile blog
    스마일 블로그
    smile blog
  • 전체
    오늘
    어제
    • 분류 전체보기 (831) N
      • 일상 생각들 (3)
      • 학과에 대해 (4)
        • 첨단바이오공학부 (4)
        • 컴퓨터공학부 (0)
      • -------- 프로젝트 -------- (0)
      • [DS] 토이 프로젝트 (1)
      • [Web, Game, XR] 토이 프로젝트 (11)
      • 경진대회 (1)
      • -------- 진로 -------- (0)
      • 생물정보학자 (18)
        • 데이터 과학이란? (0)
        • 되는 방법 (8)
        • 책 추천 (2)
        • 인강 (1)
        • 대학 (2)
        • 회사 (1)
        • 학원 (2)
        • 학회 (2)
      • 디지털 헬스케어 (72)
        • 방법 (8)
        • 생각들 (10)
        • 공부법 (4)
        • 책 추천 (2)
        • 학원 (2)
        • 참고 (2)
        • 대학 (3)
        • 회사 (3)
        • 인강 (2)
        • 게임 엔진들 (1)
        • 게임 프로그래머 개론 (2)
        • 게임 프로그래머 취업 전략 가이드 (7)
        • 취업 서류 (1)
        • 애정하는 게임들 (4)
        • XR 테크니컬 아티스트 (9)
        • 영화, 애니메이션 테크니컬 디렉터 (12)
      • -------- 기초 학문 -------- (0)
      • 생명과학 이야기 (2)
        • 대학 강의 (2)
      • 화학 이야기 (0)
      • 컴퓨터과학 이야기 (0)
      • 통계학 이야기 (0)
      • 수학 이야기 (1)
        • 공학 수학 (1)
      • 영어 이야기 (1)
      • 심리학 이야기 (7)
        • 현대인과 정신건강 (7)
      • -------- 컴퓨터 언어 -------- (0)
      • Python (3)
        • 나도코딩의 파이썬 입문 (1)
        • 파이썬 관련 정보 (1)
      • SQL (0)
      • C 언어 (32)
        • 혼자 공부하는 C언어 요약 (1)
        • [책 정리] 혼자 공부하는 C언어 (31)
      • C++ (33)
        • 명품 C++ 프로그래밍 요약 (1)
        • [책 정리] 명품 C++ 프로그래밍 (27)
        • C++ STL (0)
        • 뇌를 자극하는 C++ STL (5)
      • -------- 생명과학 -------- (0)
      • 생화학 (5)
        • 대학 강의 (5)
      • 분자세포생물학 (4)
        • 대학 강의 (4)
      • 유전자치료공학 (2)
        • 대학 강의 (2)
      • 생명정보학 (6)
        • 대학 강의 (6)
      • 약리학 (2)
        • 대학 강의 (2)
      • -------- 컴퓨터과학 -------- (0)
      • 자료구조와 알고리즘 (8)
        • 자료구조와 알고리즘의 정의 (3)
        • [책 정리] C언어로 쉽게 풀어쓴 자료구조 요약 (1)
        • [인강] 자료구조와 알고리즘 (2)
        • 코딩 테스트 대비하기! (1)
      • 컴퓨터 회로 (0)
      • 컴퓨터 구조 (43)
        • 컴퓨터 구조와 운영체제 요약 (1)
        • ---------------------------------------- (0)
        • [전공 책 정리] 컴퓨터 구조 및 설계 (1)
        • Ch1. 컴퓨터 추상화 및 관련 기술 (8)
        • Ch2. 명령어 : 컴퓨터 언어 (11)
        • Ch3. 컴퓨터 연산 (8)
        • Ch4. 프로세서 (11)
        • Ch5. 메모리 계층구조 (3)
        • Ch6. 병렬 프로세서 : 클라이언트에서 클라우드까지 (0)
      • 시스템 프로그래밍 (15)
        • [책 정리] 시스템 프로그래밍 유닉스 & 리눅스 (0)
        • [인강] 리눅스 시스템 프로그래밍 (2)
        • 리눅스에서 코딩이란? (8)
        • 대학교 강의 정리 (5)
      • 운영체제 (0)
      • 컴퓨터 네트워크 (37)
        • 모두의 네트워크 요약 (1)
        • [책 정리] 모두의 네트워크 (10)
        • ---------------------------------------- (0)
        • [전공 책 정리] 컴퓨터 네트워킹 하향식 접근 8판 (1)
        • Ch1. 컴퓨터 네트워크와 인터넷 (7)
        • Ch2. 애플리케이션 계층 (7)
        • Ch3. 트랜스포트 계층 (8)
        • Ch4. 네트워크 계층 : 데이터 평면 (3)
        • Ch5. 네트워크 계층 : 제어 평면 (0)
        • Ch6. 링크 계층과 근거리 네트워크 (0)
        • Ch7. 무선 및 이동 네트워크 (0)
        • Ch8. 컴퓨터 네트워크 보안 (0)
      • 데이터베이스 (1)
      • -------- 데이터과학 -------- (0)
      • 데이터 사이언스 (8)
        • 인강 (8)
      • 데이터 분석 (2)
        • 인강 (2)
      • 머신러닝 (2)
        • 대학 수업 (2)
      • 인공지능 (11)
        • 대학교 강의 정리 (10)
        • 인공지능 관련 정보 (1)
      • -------- +a -------- (0)
      • Visual Studio Community (7)
        • 설치법 (1)
        • 단축키 (1)
        • 오류 (5)
      • Visual Studio Code (0)
      • 노션 (1)
      • 깃허브 (7)
        • 깃허브 사용법 (5)
        • 유니티, 언리얼 & 깃허브 (1)
        • 깃허브 주의사항 (1)
      • 챗GPT 활용법 (0)
      • 기타 feat. 프로그래밍 (7)
        • 프로그래머로 살아남기 (5)
        • 코딩 vs 프로그래밍 (1)
        • 애플 비전 프로 (1)
      • 메타버스 (5)
      • -------- 예술 -------- (0)
      • 음악 (1)
      • 미술 (0)
      • -------- XR -------- (0)
      • 유니티 이야기 (23)
        • 레트로의 유니티 게임 프로그래밍 에센스 요약 (4)
        • 유니티 관련 정보 (1)
        • 유니티 디버깅 (13)
        • 유니티 인강 (3)
        • 대학교 게임 프로그래밍 강의 (2)
      • 언리얼 이야기 (0)
        • 인생 언리얼 교과서 요약 (0)
      • 컴퓨터 그래픽스 (6)
        • OpenGL (6)
      • 가상현실 & 증강현실 (4)
        • 유니티 vr (4)
      • HCI 와 UI UX (7)
        • [책 정리] HCI 개론 (6)
      • -------- Design -------- (0)
      • 캐릭터 (1)
        • 모델링 (0)
        • 리깅 (1)
      • 포토샵 (3)
      • 3ds Max (7)
      • Maya (9)
        • 블로그 (1)
        • 인강 (6)
        • 대학교 (2)
      • Blender (14)
        • 책 (1)
        • 인강 (7)
        • 기타 (3)
        • 대학교 (3)
      • 아트 작업물들 (2)
      • 에셋 사이트 (1)
      • -------- 건강관리 -------- (0)
      • 건강관리 ft. 정현 (12)
        • 목 디스크 (2)
        • 눈 관리 (2)
        • 일상생활 습관 (6)
        • 일상생활 꿀팁 (2)
        • 사무직 꿀팁 (0)
      • 헬스의 정석 ft. 정현 (28)
        • 헬스와 건강 (8)
        • 헬스 구체화 정보 (6)
        • 헬스 유튜버 (1)
        • 헬스 서적 (1)
        • 도전 바디프로필! (11)
        • 헬스장 패션 (1)
      • -------- etc -------- (0)
      • 진로 관련 잡다한 글들 (34)
        • 진도율 (9)
        • 진로 관련 글들 (15)
        • 학교 강의 관련 글들 (10)
      • 인생 꿀 Tip (23)
        • 컴퓨터 초기 설정 (9)
        • 원격 데스크톱 (1)
        • 노트북 발열 (1)
        • 전자기기 (2)
        • 중고기기 팔기 (1)
        • 아이패드 필기 어플 (1)
        • 에어팟 (1)
        • 커피 (1)
        • 맥북 (1)
        • lg 그램 (1)
        • 검색엔진에서 내 티스토리 검색 (1)
        • hELLO 다크 모드 없애기 (1)
        • 인터넷 연결 문제 (1)
        • 키보드 문제 해결 (1)
      • 유튜브 (3)
      • 청춘 그리고 추억 (1)
      • 인생 계획표 (2)
        • 2024년 2학기 (1)
        • 2024년 여름방학 (0)
        • 2024년 1학기 (0)
        • 2023년 겨울방학 (1)
      • 다양한 글들 (98)
        • C++ STL (6)
        • Win32 API (24)
        • PushPush 게임 (13)
        • 컴퓨터구조 (1)
        • 자료구조와 알고리즘 (50)
        • 게임의 정의 (3)
        • 영상 회사 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

    • Dream
    • 코딩을 시작한 이유
    • 나를 소개합니다!
    • 블로그 공부법
    • IT & 가치 있는 일들
  • 인기 글

  • 태그

    함수
    블렌더
    명령어
    생명과학
    자료구조
    심리학
    의생명정보알고리즘
    생명공학
    포인터
    코딩
    유니티
    생물정보학
    알고리즘
    건국대
    C++
    컴퓨터구조
    스택
    인공지능
    unity
    첨단바이오공학부
    데이터과학
    연산자
    C언어
    의생명공학과
    리눅스
    데이터사이언스
    컴퓨터 네트워크
    배열
    의생명공학
    AI
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
smile blog
의생명정보알고리즘 대학 강의 정리
상단으로

티스토리툴바