Kodomo

Пользователь

Учебная страница курса биоинформатики,
год поступления 2013

Задания

1) (1 балл) Дан файл,file.txt вида:

   1 chr15   20012542        20012741        SL-XBE_3_FC30CMAAAXX:5:51:1365:1061     1       +
   2 chr15   20012564        20012763        SL-XBE_3_FC30CMAAAXX:5:48:379:1993      1       +
   3 chr15   20018877        20019076        SL-XBE_3_FC30CMAAAXX:5:42:883:1772      1       +
   4 chr15   20019782        20019981        SL-XBE_3_FC30CMAAAXX:5:78:722:1221      1       +

Первые три столбца - информация о координатах образца секвенирования(рида) в геноме. Написать программу которая, берет на вход данный файл и записывает в другой файл информацию о координатах рида, попадающих в геномный интервал chr15:20050000;20051000.

2) (2 балла) Дан файл, file.txt вида:

   1 ##gff-version 3
   2 ##gvf-version 1.07
   3 ##file-date 2014-11-26
   4 ##genome-build ensembl BDGP5
   5 ##species http://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?id=7227
   6 ##feature-ontology http://song.cvs.sourceforge.net/viewvc/song/ontology/so.obo?revision=1.283
   7 ##data-source Source=ensembl;version=78;url=http://e78.ensembl.org/Drosophila_melanogaster
   8 ##file-version 78
   9 ##sequence-region 3R 1 21146708
  10 3R DPGP SNV 27385340 27385340 . + . ID=6778388;Variant_seq=C;Dbxref=DPGP_1:ENSVDME05481013;Reference_seq=A
  11 3R DPGP SNV 27460036 27460036 . + . ID=6781013;Variant_seq=T;Dbxref=DPGP_1:ENSVDME05483638;Reference_seq=G
  12 3R DPGP SNV 27641013 27641013 . + . ID=6786747;Variant_seq=A,C;Dbxref=DPGP_1:ENSVDME05489372;Reference_seq=G
  13 3R DPGP SNV 27691162 27691162 . + . ID=6788388;Variant_seq=T;Dbxref=DPGP_1:ENSVDME05491013;Reference_seq=A
  14 ....
  15 3R DPGP SNV 27770512 27770512 . + . ID=6791013;Variant_seq=A;Dbxref=DPGP_1:ENSVDME05493638;Reference_seq=T

Посчитать количество замен:

   1 A-> T
   2 G -> C
   3 T -> A
   4 C -> G

И напечатать эти частоты в другой файл.

3) Дан файл olymp.txt вида:

John Smith 3000

David Anj 40

в котором записаны результаты участников студенческой олимпиады по информатике в формате <имя> <результат> через разделитель табуляцию (\t).

Задания (выполнение строго по порядку, зачет по максимуму, программа должна успешно отработать за разумное время на указанном в задании файле) – написать программу, которая будет:

3.1) (0.5 балла) выводить в таком же формате результаты 10 самых первых человек из файла и 10 человек с самыми первыми по алфавиту именем-фамилией. Имя файла должно задаваться переменной в начале скрипта. Во входном файле гарантированно нет повторяющихся полных имен (однофамильцев).

Тест: файл olymp.txt.

3.2) (1 балл) выводить число человек, чей результат находится в интервале от a до b (целые числа, a < b) включительно, и затем – результаты 20 неповторяющихся случайных человек из них (если таких меньше 20 - то только их). Имя файла, a и b должны задаваться переменными в начале скрипта. Во входном файле гарантированно нет повторяющихся полных имен (однофамильцев).

Тест: файл olymp.txt.

3.3) (2 балла) брать на вход еще один файл names.txt, содержащий только имена, по одному на строку; и выдавать: число человек, чей результат находится в интервале от a до b (целые числа, a < b), показатели человек из второго файла: всего, сколько из них участвовало в олимпиаде, какой средний балл они набрали, у скольких из них – результат в интервале [a,b]. Имена файлов, a и b должны задаваться переменными в начале скрипта. В каждом из входных файлов по отдельности гарантированно нет повторяющихся полных имен (однофамильцев).

Тест: файл olymp.txt и names.txt.