У меня есть текстовый файл со сложной структурой, и я хотел бы создать файл, разделенный табуляцией, с 10 столбцами. Проблема заключается в начале этого файла, есть несколько бесполезных строк, которые должны быть удалены. в этом файле есть строка, начинающаяся с #CHROM
, которая будет первой строкой результирующего текстового файла.
вот пример моего входного файла:
##bcftools_filterCommand=filter -e 'SOMATIC_PON_COUNT!="." && MIN(SOMATIC_PON_COUNT) > 3' -s SOMATIC_PON -m+ -O z -o /sample/output/180614_HMFregCPCT_FR16985640_FR16985806_CPCT02170033/somaticVariants/CPC
T02170033R_CPCT02170033T/CPCT0217003ted.pon
#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT CPCT02170033T
1 819393 . T C . PASS AC=0;AF=0;AN=0;MAPPABILITY GT:AD:DP 0/1:75,15:91
ожидаемый результат (с 2 строками):
CHROM POS ID REF ALT QUAL FILTER INFO FORMAT CPCT02170033T
1 819393 . T C . PASS AC=0;AF=0;AN=0;MAPPABILITY GT:AD:DP 0/1:75,15:91
для этого я написал следующий код в python3:
with open("myfile.txt") as f:
total = f.readlines()
skip_value = total.index("#CHROM\n")
df = pd.read_csv("myfile.txt", skiprows=skip_value, sep="\t")
но это дает эту ошибку:
ValueError: '#CHROM\n' is not in list
Вы знаете, как исправить код?
skiprows=1
в вашемpd.read_csv
- person Umar.H   schedule 23.09.2019