数据预处理:读取文件数据,并存为python数组
生活随笔
收集整理的這篇文章主要介紹了
数据预处理:读取文件数据,并存为python数组
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
文件的簡單讀取
# 定義一個將文件中的數(shù)據(jù)轉(zhuǎn)化為數(shù)組的類 import numpy as np class DataUtil: # ============================================================================= # 從文件中讀取數(shù)據(jù) # 5個參數(shù):數(shù)據(jù)集的名稱,數(shù)據(jù)集的路徑,訓練樣本數(shù),類別所在列,是否打亂數(shù)據(jù) # =============================================================================def get_dataset(name,path,train_num=None,tar_index=None,shuffle=True):x =[]# 將編碼設(shè)置為utf-8with open(path,"r",encoding="utf-8") as file:# 如果是氣球數(shù)據(jù)集的話,使用逗號分割數(shù)據(jù)if "balloon" in name:# 文件讀取是一行一行讀取的for sample in file:# 一行數(shù)據(jù)就是一個數(shù)組,strip()去空格,split(",")以逗號分隔x.append(sample.strip().split(","))# 默認打亂數(shù)據(jù)if shuffle:np.random.shuffle(x)# 默認類別在最后一列tar_index = -1 if tar_index is None else tar_indexy = np.array([xx.pop(tar_index) for xx in x])x = np.array(x)# 默認是全部訓練樣本if train_num is None:return x,y# 若傳入了訓練樣本樹,則分為訓練集和測試集return (x[:train_num],y[:train_num]),(x[train_num:],y[train_num:])測試:
原始數(shù)據(jù):
黃色,小,成人,用手打,不爆炸 黃色,小,成人,用腳踩,爆炸 黃色,小,小孩,用手打,不爆炸 黃色,小,小孩,用腳踩,不爆炸 黃色,大,成人,用手打,爆炸 黃色,大,成人,用腳踩,爆炸 黃色,大,小孩,用手打,不爆炸 黃色,大,小孩,用腳踩,爆炸 紫色,小,成人,用手打,不爆炸 紫色,小,小孩,用手打,不爆炸 紫色,大,成人,用腳踩,爆炸 紫色,大,小孩,用腳踩,爆炸測試結(jié)果
_x,_y = DataUtil.get_dataset("balloon1.0","_Data/balloon1.0.txt") print(_x) print(_y) runfile('D:/share/test/Util.py', wdir='D:/share/test') [['黃色' '大' '成人' '用腳踩']['黃色' '小' '小孩' '用手打']['黃色' '小' '成人' '用手打']['紫色' '小' '成人' '用手打']['紫色' '小' '小孩' '用手打']['紫色' '大' '小孩' '用腳踩']['紫色' '大' '成人' '用腳踩']['黃色' '小' '成人' '用腳踩']['黃色' '小' '小孩' '用腳踩']['黃色' '大' '成人' '用手打']['黃色' '大' '小孩' '用手打']['黃色' '大' '小孩' '用腳踩']] ['爆炸' '不爆炸' '不爆炸' '不爆炸' '不爆炸' '爆炸' '爆炸' '爆炸' '不爆炸' '爆炸' '不爆炸' '爆炸']另外一種:
def loadDataSet(fileName):"""加載數(shù)據(jù)集:param fileName::return:"""dataMat = []; labelMat = []fr = open(fileName)for line in fr.readlines():lineArr = line.strip().split('\t')dataMat.append([float(lineArr[0]), float(lineArr[1])])labelMat.append(float(lineArr[2]))return dataMat,labelMat總結(jié)
以上是生活随笔為你收集整理的数据预处理:读取文件数据,并存为python数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据预处理:原始数据集快速分类的方法,n
- 下一篇: Python学习:numpy点乘,按元素