sklearn 線性迴歸簡單實現

一個使用sklearn實現線性迴歸的簡單實例,主要包括數據準備,以及預測部分。

  1. 數據準備
def loadDataSet(filename):
    file=open(filename,'r')
    dataMat=[]
    labelMat=[]
    filelines=file.readlines()
    #讀取文件
    for line in filelines:
        linearr=[]
        #對文件內容進行處理
        curline=line.strip().split('\t')
        for i in range(1,len(curline)):
            linearr.append(float(curline[i]))
        dataMat.append(linearr)
        labelMat.append(float(curline[0]))
        #歸一化處理
    min_max_scaler = preprocessing.MinMaxScaler()
    dataMat = min_max_scaler.fit_transform(dataMat)

#對訓練數據進行分批,用於檢驗預測的爭取性
    return cross_validation.train_test_split(dataMat,labelMat,test_size=0.25,\
                                             random_state=random.randint(1,5))

2.預測部分

def test_linearregression():
    xtrain, xtest, ytrain, ytest = loadDataSet(r'xxx.txt')
    regr = linear_model.LinearRegression()
    regr.fit(xtrain, ytrain)
    return regr.score(xtest, ytest)

3.用到的頭文件

from sklearn import  linear_model,cross_validation,discriminant_analysis
from sklearn import preprocessing
import random

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章