首頁 >後端開發 >Python教學 >python怎麼讀取數據

python怎麼讀取數據

(*-*)浩
(*-*)浩原創
2019-06-24 11:02:477478瀏覽

讀取資料可以方便我們的工作,python中常見的資料讀取方式有很多,那麼python如何讀取資料呢?

python怎麼讀取數據

利用pandas中的read_csv模組直接將資料讀取出來。 (建議學習:Python影片教學

data = pd.read_csv('/home/nw/Desktop/dataset/iris.txt',header = None)

上面的程式碼,read_csv中前面的是資料集存放的路徑,後面的header很重要,常常以為少了header ,資料的總量減少了1,因為少掉的那一行資料變成了DataFrame裡面的列索引。

還有一種是比較傳統的方法,直接用open打開文件,把文件裡面的資訊先取出來,不管取出來是什麼樣子的,先取出來再說,想要作什麼處理直接對取出的變數做處理即可。

f= open('/home/nw/Desktop/dataset/iris.txt','rb')
 
dataset = pickle.load(f)
#这种方法适用于自己存取自己的数据,有时候在读取别人的数据的时候是不行的,因为别人存数据的方式不一定是用pickle.dump的方
##式存数据的。
 
f = open('/home/nw/Desktop/dataset/iris.txt')
 
'''
注意这里的open后面最好不要加上其他的读取方式,不需要‘rb’之类的读取方式。因为在后续的数据处理中可能还需要将二进制的数
据转换成自己想要的个数。 
'''
 
lines = f.readlines()
 
'''
 
现在lines中已经包含了所有的数据信息,我们想要得到的数据格式都可以基于lines做处理。如我读出的iris数据格式是一个列表的形
式,使用len(lines)得到列表中元素的个数是151,打印出lines,可以看到lines中每个元素都是一个字符串,并且每个字符串后面都
有'\n'的换行字符,最后一行是空行,所以最后一行是多余,并且要去掉每行中的'\n'
 
'''
 
arr = []
 
for i in range(len(lines)):
 
    if lines[i] != '\n':
 
        arr.append(lines[i])
 
for i in range(len(arr)):
 
    arr[i] = arr[i].strip('\n')#将每行的'\n'脱去

更多Python相關技術文章,請造訪Python教學欄位學習!

以上是python怎麼讀取數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn