讀取資料可以方便我們的工作,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中文網其他相關文章!