Скопировать номер формата файла проблема (необходимо изменить структуру) - PullRequest
0 голосов
/ 26 июня 2018

У меня есть файл в специальном формате .cns, который представляет собой сегментированный файл, используемый для анализа количества копий. Это текстовый файл, который выглядит следующим образом (первая строка плюс заголовок):

head -1 copynumber.cns

хромосома, начало, конец, ген, log2 chr1,13402,861395, "LOC102725121, DDX11L1, OR4F5, LOC100133331, LOC100132062, LOC100132287, LOC100133331, LINC00115 * SAMD11", - 0,28067 * 100

Мы преобразовали его в .csv, чтобы мы могли разделить его на табуляцию (но это не сработало). .Cns разделяется запятыми, но гены представляют собой одну строку, разделенную кавычками. Я надеюсь, что это полезно. Вывод, который мне нужен, выглядит примерно так:

ген log2

LOC102725121 -0,28067

DDX11L1 -0,28067

OR4F5 -0,28067

PIK3CA 0,35475

NRAS 3.35475

Первым шагом было бы разделить все запятыми, а затем транспонировать столбцы? и, наконец, вывести значение de log2 для каждого гена, содержащегося в этой строке, разделенной кавычками. Если бы вы могли помочь мне с R или Python-скриптом, это бы очень помогло. Возможно, awk тоже подойдет. Я использую LInux UBuntu V16.04 Я не уверен, если я проясняю, дайте мне знать, если это полезно. Спасибо!

1 Ответ

0 голосов
/ 26 июня 2018

Надеюсь, следующий код в Python поможет

import csv

list1 = []
with open('copynumber.cns','r') as file:
    exampleReader = csv.reader(file)
    for row in exampleReader:
        list1.append(row)

for row in list1:
    strings = row[3].split(',')   # Get fourth column in CSV, i.e. gene column, and split on occurrance of comma
    for string in strings:  # Loop through each string
        print(string + ' ' + str(row[4])) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...