zoukankan      html  css  js  c++  java
  • 【342】Linear Regression by Python

    Reference: 用scikit-learn和pandas学习线性回归

    • 首先获取数据存储在 pandas.DataFrame 中,获取途径(CSV 文件、Numpy 创建)
    • 将数据分成 X 和 y,X 可以含有多列,也就是多个参数
    • 通过 Linear Regression 计算
    • 获取 intercept 和 coefficient

    实现步骤如下:

    >>> import numpy as np
    >>> import pandas as pd
    >>> from sklearn import datasets, linear_model
    >>> from sklearn.linear_model import LinearRegression
    >>> data = np.array([
    	['X', 'y'],
    	[2.0, 2.2],
    	[3.0, 3.8],
    	[4.0, 5.5],
    	[5.0, 6.5],
    	[6.0, 7.0]])
    >>> lr = pd.DataFrame(data=data[1:,:],
    		      columns=data[0,:])
    >>> lr
         X    y
    0  2.0  2.2
    1  3.0  3.8
    2  4.0  5.5
    3  5.0  6.5
    4  6.0  7.0
    >>> X = lr[['X']]
    >>> X
         X
    0  2.0
    1  3.0
    2  4.0
    3  5.0
    4  6.0
    >>> y = lr[['y']]
    >>> y
         y
    0  2.2
    1  3.8
    2  5.5
    3  6.5
    4  7.0
    >>> linreg = LinearRegression()
    >>> linreg.fit(X, y)
    LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,
             normalize=False)
    >>> linreg.intercept_
    array([0.08])
    >>> linreg.coef_
    array([[1.23]])
    


    代码如下:

    >>> data = np.array([[3,2.5],[4,3],[5,4],[6,4.5]])
    >>> lr = pd.DataFrame(data)
    >>> X = lr[[0]]
    >>> y = lr[[1]]
    >>> linReg = LinearRegression()
    >>> linReg.fit(X, y)
    LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,
             normalize=False)
    >>> linReg.intercept_
    array([0.35])
    >>> linReg.coef_
    array([[0.7]])
    
  • 相关阅读:
    MySQL主从半同步复制
    MySQL主从之延时复制
    MySQL备份
    MySQL主从介绍及搭建(异步复制)
    MySQL物理备份Xtrabackup
    MySQL数据库误删除数据恢复
    MySQL--日志
    JAVA日报
    JAVA日报
    JAVA日报
  • 原文地址:https://www.cnblogs.com/alex-bn-lee/p/10043875.html
Copyright © 2011-2022 走看看