HW1_Linux_basics
Формат передачі генів (GTF) - це формат файлів, який використовується для зберігання інформації про структуру генів. Це текстовий формат з розділенням табуляцією, заснований на форматі загальних ознак (GFF), але містить деякі додаткові домовленості, специфічні для генної інформації. Важливою особливістю GTF є те, що його можна перевіряти: маючи послідовність і файл GTF, можна перевірити правильність формату. Це значно зменшує проблеми з обміном даними між групами.

Дані які будемо аналізувати це гени Drosophila melanogaster - модельний об’єкт для багатьох генетичних досліджень. Для цього завдання виділено 14 генів Drosophila melanogster. Вашим завданням буде проаналізувати їх та виконати вказівки описані нижче.
Список генів:
- bcd
- nos
- hb
- wg
- hh
- en
- m
- dac
- gl
- ftz
- twi
- tim
- Pi3K92E
- InR
Опис завдання
Потрібно вияснити:
- На якій хромосомі знаходиться ген
- dene_id знайденого гену
- gene_source гену
- Скільки Елементів(Features) знайдено для цього гену у вигляді екзонів
- Знайти найдовший Елемент(feature)
- Знайти найменший Елемент(feature)
- Записати всі отримані резульати у вигляді таблички excel(приклад додається)
- Pro-task(optional): написати скрип bash який автоматично виконає завдання(output у вигляді txt з рядками з відповідями через пробіл, приклад додається)
Таблиця з кінцевим результатом матиме вигляд:
| Ознака | Інформація |
|---|---|
| Розташований на хромосомі | 3L |
| gene_id | FBgn0263995 |
| gene_source | FlyBase |
| Кількість Елементів(Features) | 135 |
| Max довжина Елементу | 37 |
| Min довжина Елементу | 5744 |
Крок 1. Завантаження файлу
Для того щоб завантажити файл, використайте команду curl
mkdir genomics_2025 # створення папки в кореневій папці
cd genomics_2025 # Перехід у створену папку
mkdir HW1_Linux_basics # Створення папки у новоствореній папкці
cd HW1_Linux_basics # Перезід у новостворену папку
pwd # Перевірка шляху створених папкок
# pwd_output: ~/genomics_2024/HW1_Linux_basics/
curl -O https://ftp.ensembl.org/pub/release-112/gtf/drosophila_melanogaster/Drosophila_melanogaster.BDGP6.46.112.gtf.gz # Завантаження GTF файлу референтного геному Drosophila melanogasterКрок 2. Використання cat, more, less, head, tail для перегляду файлу
# Перегляд 20 рядків файлу за допомогою команди head
head -n 20 Drosophila_melanogaster.BDGP6.46.112.gtf
# Перегляд останніх 20 рядків файлу за допомогою команди tail
tail -n 20 Drosophila_melanogaster.BDGP6.46.112.gtf
# Перегляд файлу за допомогою less
less -S Drosophila_melanogaster.BDGP6.46.112.gtf
# Перегляд файлу за допомогою more
more Drosophila_melanogaster.BDGP6.46.112.gtf
# Перегляд файлу за допомогою cat
cat Drosophila_melanogaster.BDGP6.46.112.gtfКрок 3. Пошук гену за допомогою команди grep
# Використання команди grep для знаходження гену "cpo"
grep \"cpo\" -w Drosophila_melanogaster.BDGP6.46.112.gtf
# Використання команиди wc для підрахунку унікальних Features(кількості рядків) для гена "cpo"
grep \"cpo\" -w Drosophila_melanogaster.BDGP6.46.112.gtf | wc -l
# Підрахунок кількості Features гену "cpo" для екзонів
grep \"cpo\" -w Drosophila_melanogaster.BDGP6.46.112.gtf |grep -w "exon" | wc -l
# Перегляд у зручному форматі за допомогою команди less
grep \"cpo\" -w Drosophila_melanogaster.BDGP6.46.112.gtf |grep -w "exon" | less -S
# Запис відповіді у новий gtf файл
grep \"cpo\" -w Drosophila_melanogaster.BDGP6.46.112.gtf |grep -w "exon" > cpo.gtf
# відображення отриманого результату
less -S cpo.gtfЗапишіть кількість Елементів(Features) у excel табличку
Крок 4. Пошук корисної інформації про розташування гена на хромосомі, gene_id, gene_source
# Знайти хромосому на якій розташований ген "cpo"
cut -f 1 cpo.gtf | head -n 1
# Пошук gene_id гену "cpo"
cut -f 9 cpo.gtf | cut -d ';' -f 1 | head -n 1
# Пошук gene_source гену "cpo"
cut -f 9 cpo.gtf | cut -d ';' -f 5 | head -n 1Таким чином отримали інформацію про хромосому, gene_id та gene_source. Запишіть отримані результати у Excel табличку
Крок 5. Знаходження Min та Max елементів(features) гена
# Оберіть відповідні колонки в яких міститься інформація про початок та кінець транскрипту
cut -f 4,5 cpo.gtf > length_gene.txt
# відніміть значення колонки 2 від колонки 1 та запишіть у новий файл min_max_gene.txt
awk '{print $2 - $1}' length_gene.txt > min_max_gene.txt
# Знайти мінімальне число Елементу(Feature) гена
sort -n min_max_gene.txt | head -n 1
# Знайти максимальне число Елементу(Feature) гена
sort -n min_max_gene.txt | tail -n 1
# Продвинутіший спосіб знаходження min та max
awk 'NR == 1 {min = $1} $1 < min {min = $1} END {print min}' min_max_gene.txt
awk 'NR == 1 {max = $1} $1 > max {max = $1} END {print max}' min_max_gene.txtЗапишіть знайдені min та max довжину Елементів(Features) у табличку
Крок 6. (Optional) Shell скрипт
Напишіть shell скрипт для оптимізації процесу та анотації генів у автоматичному режимі