python讀取.data文件的實現(xiàn)
.data文件格式
.data文件是用來存儲數(shù)據(jù)的一種文件格式。之前通常數(shù)據(jù)是用逗號隔開或tab健隔開的格式,現(xiàn)在也可能是文本文件格式或二進制文件格式。
識別.data文件里面的數(shù)據(jù)
1、先測試一下文件是文本文件還是二進制文件
用網(wǎng)上可以下載到的iris.data文件來舉例(iris.data文件下載地址:https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data),代碼如下:
# 通過python自帶的文件讀取文本文件 file=open('iris.data','r') data=file.read() print(data) file.close()
運行之后,可以看到結果(此處放部分數(shù)據(jù)結果):
根據(jù)打印出來的數(shù)據(jù)結果,可以分析出來,iris.data存的是文本數(shù)據(jù),并且是用逗號分隔的,也可以認為是csv文件格式。
如果打印出來的數(shù)據(jù)結果不是文本類型的話,可以測試一下是不是二進制文件,代碼如下:
# 通過python自帶的文件讀取二進制文件 file=open('iris.data','rb') data=file.read() print(data) file.close()
2、用Pandas讀取.data文件
方法如下:
用read_csv()方法讀取文件,這個方法會自動創(chuàng)建一個dataframe,將數(shù)據(jù)轉換進去,代碼如下:
# 使用Pandas讀取數(shù)據(jù) import pandas as pd data=pd.read_csv('iris.data',header=None,sep=',') print(data)
注意:在第一步里面查看文件內容的時候,發(fā)現(xiàn)iris.data文件里面沒有表頭,iris.data的表頭是在iris.names文件里面進行說明的(附上iris.names文件下載地址:https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.names),所以在read_csv函數(shù)調用的時候,需要加上header=None,否則data里面的第一行就會自動變成表頭,這樣的話150行數(shù)據(jù)就變成149行。
運行之后,顯示結果如下:
3、其他數(shù)據(jù)存儲類型
除了上述提到的文件格式外,還有json格式和pickle。
在讀取的時候,需要import json和import pickle后,調用json.dumps()方法和pickle.dump()方法進行讀取。
參考資料
https://www.askpython.com/python/examples/read-data-files-in-python
到此這篇關于python讀取.data文件的實現(xiàn)的文章就介紹到這了,更多相關python讀取.data文件內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python?OpenCV超詳細講解透視變換的實現(xiàn)
OpenCV用C++語言編寫,它具有C?++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac?OS,OpenCV主要傾向于實時視覺應用,并在可用時利用MMX和SSE指令,本篇文章帶你通過OpenCV實現(xiàn)透視變換2022-04-04