1
我試圖用這個代碼解析一個CSV文件,但無法找到解決這個錯誤我的方式:IndexError:列表索引超出範圍CSV解析器的
「文件‘(文件位置)’,管道438,在parser_42
位置= TMP2 [1]
IndexError:列表索引超出範圍」
我的CSV文件的結構如下所示:
突變係數在sco重新
Q41V -0.19 0.05
Q41L -0.08 0.26
Q41T -0.21 0.43
I23V -0.02 0.45
I61V 0.01 1.12
我想利用突變體並且例如分開'Q''41'和'V'。 然後,我想要創建位置和wt列表並按數字順序放置它們。
目標是字符串「序列」寫入新的csv文件
很明顯,我在Python和數據處理初學者。我想我只是在俯視一些愚蠢的東西......任何人都可以把我引向正確的方向嗎?
def parser_42(csv_in, fasta_in, *args):
with open(csv_in, 'r') as tsv_in:
tsv_in = csv.reader(tsv_in, delimiter='\t')
next(tsv_in) # data starts on line 7
next(tsv_in)
next(tsv_in)
next(tsv_in)
next(tsv_in)
next(tsv_in)
for row in tsv_in:
tmp = row[0].split(',')
tmp2 = re.split('(\d+)', tmp[0])
wt = tmp2[0]
position = tmp2[1]
substitution = tmp[2]
seq = ""
current_positions = []
if position not in current_positions:
current_positions += [position]
print(current_positions)
seq += wt
else:
continue
print(seq)
它看起來像你的CSV只有每行和youre設法存取權限第二個值與'TMP2一個值[1]' – Craicerjack
你可能有一個空行的地方,可能是在文件的結尾。 – TigerhawkT3
分離之後,您可以在繼續訪問不存在的索引之前檢查結果的長度。 –