在使用python訓練人工智能網絡模型的時候,經常需要保存訓練結果到文件中,比如在kaggle競賽的時候,通常需要保存測試結果到csv中,這個時候大家可能會用到本文的技術。
方法一:open函數保存
#保存數據 open函數
with open('D:/PythonWorkSpace/TestData/pinglun.txt','w',encoding='utf-8') as f:
for i in comments:
print(i)
# 入數據,文件保存在上面指定的目錄,加\n爲了換行更方便閱讀
f.write(i+'\n')
方法二:csv寫入
import csv
import codecs
with codecs.open('./test.csv', 'w', 'utf-8') as csvfile:
# 指定 csv 文件的頭部顯示項
filednames = ['ID', 'PRICE']
writer = csv.DictWriter(csvfile, fieldnames=filednames)
writer.writeheader()
for i in range(0, len(test_index)):
try:
writer.writerow({'ID':test_index[i], 'PRICE':y_pred[i]})
except UnicodeEncodeError:
print("編碼錯誤, 該數據無法寫到文件中, 直接忽略該數據")
方法三:DataFrame
使用 DataFrame 包,這也是 pandas 中訓練人工智能模型常用的 python 包,是一個大家都必會的包。
可能的問題:csv文件中看不到數據,但是通過python代碼可以看到數據。
dataframe = pd.DataFrame({'ID':test_index,'PRICE': y_pred})
# dataframe = pd.DataFrame({'PRICE': test_index})
dataframe.to_csv("test12.csv",index=False,sep='\n')
本文分享自微信公衆號 - 哥妞(gh_d18ec82f19ea)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。