《Python数据科学:技术详解与商业实践》线性回归案例
# 数据说明:本数据是一份汽车贷款数据
# |字段名|中文含义|
# |:--:|:--:|
# |id|id|
# |Acc|是否开卡(1=已开通)|
# |avg_exp|月均信用卡支出(元)|
# |avg_exp_ln|月均信用卡支出的自然对数|
# |gender|性别(男=1)|
# |Age|年龄|
# |Income|年收入(万元)|
# |Ownrent|是否自有住房(有=1;无=0)|
# |Selfempl|是否自谋职业(1=yes, 0=no)|
# |dist_home_val|所住小区房屋均价(万元)|
# |dist_avg_income|当地人均收入|
# |high_avg|高出当地平均收入|
# |edu_class|教育等级:小学及以下开通=0,中学=1,本科=2,研究生=3|
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols
pd.set_option('display.max_columns',8)
r = pd.read_csv('数据科学数据\creditcard_exp.csv',skipinitialspace=True)
#筛选avg_exp非空数据进行建模,空数据进行预测
exp = r[r['avg_exp'].notnull()].copy().iloc[:,2:].drop('age2',axis=1)
exp_new=r[r['avg_exp'].isnull()].copy().iloc[:,2:].d