2016-10-12 35 views
0

我有一個類似的文本文件:組織一個文本文件,並將其隱蔽到CSV

什麼是組織本txt文件,這樣我可以將其轉換爲一個CSV文件後的最佳方式? 理想情況下,我想在每個序列及其度量(每個測量在一個單獨的列)末尾有一個表格

我是新來的python和文本編輯,任何幫助表示讚賞。

AlmostGood = GoodTextFile.readlines() 
AlmostGood 


['a score=298 EG2=6.4e-70 E=1.3e-83\n', 
's read1067_2d  42 1073 + 1205 TTTTCTAAATTGTAATTTTTATTGGAAAA-CAAA-TATACAACTTGGAAT--GGATTTCCGAGGCAAAATTGTGCCATAAGCAGATTTTAAGTGGCTAAACAA---AGTTTAAA-AGC-AAGTAACAATAAAGAGAAAATGGGTTTCTGGTACAGGACCAGCAGTACAAAATAGTGTACGAGTGACCTGGATAA-TACACCCGTTTCGGCAATAGTGCAATTTAAGT\n', 
's read39_complement 38 1007 + 1149 TTTTTTATAGT-TACTTTTTCTTAGAAACTCAAACTA-ACTGGTCGCAGTCCGGTTTTGCG-G--AAAATTGTGACGGTA-TTCATGTTCTTGCCATCATTGT-AG-AATTC\n', 
'\n', 
'a score=294 EG2=9.1e-69 E=3.1e-82\n', 
's read62_2d   20 1142 + 1186 AGCAGTGGTATCAATGCAGAGATGATTTTTTAAATTGGATTTTTTGATGGAA---CAAA-TATACAACTTGAA-TG-GATTTT\n', 
's read39_complement 14 1098 + 1149 AGCAATCTTGT-AACCCCGATATGGTTTTTTATAGTT-ACTTTTTCTTAGAAACTCAAACTA'] 
+0

組織一個txt文件並將其轉換爲CSV文件。 – BlueSky

+0

提供您試圖用該文件實現的結果。目前尚不清楚......例如,您可以先用逗號分割,然後再用空格分割。然後寫新行 – mk2

回答

0

最快的方法是使用正則表達式。但是,作爲Python新手,請不要慌張。

import re 

matchSequence = [] 
matchMeasurements = [] 
for item in AlmostGood: 
    matchSequence.append(re.match([a], item)) 
    matchMeasurements.append(re.match([s], item)) 

我真的不能在此刻進行測試,但理論上它應該通過你的文字,你已經解析了每行搜索,這兩種類型的成基於第一個字母單獨的列表進行排序。帶有換行符的字符串應完全忽略。 Here's the regular expression documentation for Python.

+0

作爲一個附加說明,如果你想清理字符串(即最後的換行符),只需要: string.strip() – RavenApps

相關問題