NLP-關於資料集處理的相關程式碼
阿新 • • 發佈:2018-12-12
1.將幾個檔案中的資料合併為一個檔案
將要合併的幾個檔案放入一個資料夾下
import os #獲取目標資料夾的路徑 # filedir=os.getcwd()+'/corpus' #獲取當前資料夾中檔名稱列表 # filenames=os.listdir(filedir) #遍歷檔名 # for filename in filenames: filepath=filedir+'/'+filename #遍歷單個檔案,讀取行數 for line in open(filepath, encoding='utf-8').readlines(): data.append(line) with open('train.txt', 'w',encoding='utf-8') as fout: for i in range(0, len(data)): fout.write(data[i])
2.將對話資料劃分為問題-回覆對
for filename in filenames: filepath=filedir+'/'+filename #遍歷單個檔案,讀取行數 for line in open(filepath,encoding='utf-8').readlines(): line = line.strip() if line == '===': continue data.append((line.replace('Q: ', '').replace('A: ', ''))) with open('train.txt', 'w') as fout: for i in range(0, len(data), 2): fout.write(data[i] + '\t' + data[i + 1] +'\t'+ '1'+'\n') for i in range(len(data)-2,0,-2): fout.write(data[i] + '\t' + data[i-1] + '\t' + '0' + '\n')