美文网首页统计学学习
实践-python实现回归分析

实践-python实现回归分析

作者: HenlyX | 来源:发表于2020-02-16 20:08 被阅读0次

    作业:本周是统计学学习小组-第二期的第十三周,我们这周是python实践周,实现的内容是第十二周的回归分析部分,大家尝试着自定义函数实现上周的知识点,也可以调用python中自带的库实现。这次给大家提供的数据是汽车销售数据,各位可以使用数据进行实际操作

    代码实现如下

    #coding=utf-8

    import sys

    from sklearn.model_selectionimport train_test_split

    import numpyas np

    from sklearnimport datasets,linear_model

    import pandasas pd

    data = pd.read_csv('car_data.csv')

    data = data.rename(columns={"券代码 ":'A',"日期":'B',"传统汽车销量":'C',"国内生产总值当季值(亿元)x1":'D',"汽油价格(元/吨)x2":'E',"人民币贷款基准利率%x3":'F',"汽车总产量(万辆)x4":'G',"公路里程数":'H',"汽车整车股票指数":'I',"消费者信心指数":'J'})

    #print(data.head())

    #print(data.describe())

    #判断是否存在有特征值里面含有空值

    # data.isnull().any()

    #公路里程数存在空值,#将特征中的空值用均值进行填充

    data['H']=data['H'].fillna(data['H'].mean())

    #y = data.iloc[:,2]

    #x = data.iloc[:, 3:5]

    label = data[['J']].copy()

    train=data.iloc[:,2:]

    train=train.drop(['J'],axis=1)

    print(train)

    #结果见下:

    #label

    print(label)

    # 训练数据#

    # 将数据划分为训练集和测试集 #并且按照28的比例进行划分

    x_train, x_test, y_train, y_test = train_test_split(train, label,test_size =0.2,random_state =1)

    #训练回归模型

    regr = linear_model.LinearRegression()

    regr.fit(x_train,y_train)

    #训练完进行预测

    # print(x_test.dtypes)

    #y_test=regr.predict(x_test)

    y_pred=regr.predict(x_test)

    # print(y_test.dtypes)

    #将完全平方误差作为评价指标(MAE)

    from sklearn.metricsimport mean_absolute_error

    accs=mean_absolute_error(y_test['J'],y_pred)

    #accs

    print('coefficients(b1,b2...):',regr.coef_)

    print('intercept(b0):',regr.intercept_)

    # 预测数据

    #y_pred = regr.predict(x_test)

    # 查看模型得分

    print(regr.score(x_test, y_test))

    最终执行结果如下:

    相关文章

      网友评论

        本文标题:实践-python实现回归分析

        本文链接:https://www.haomeiwen.com/subject/igpmfhtx.html