对数据进行预处理
特征选择
划分为测试集训练集
均衡处理
用决策树模型对数据进行分析
分类指标低怎么提高
如有帮助给个采纳谢谢
pd.read_csv()
函数加载CSV文件或其他适当的函数加载其他类型的数据。fillna()
函数填充缺失值,或删除包含缺失值的行/列。train_test_split()
函数将数据划分为训练集和测试集,指定测试集的比例。fit()
函数进行训练。predict()
函数进行预测。目标是想找出2012–2016年远洋山水这个小区的价格走势,进行房价走势预测
#剔除异常值:价格>1才是有效数据
data =data[data.cjdanjia>1]
#处理数据:计算距离2012-01-01 的天数,并添加一列time
data = data.assign(time =(pd.to_datetime(data.index)-pd.to_datetime('20120101')).days) #距离2012的时间为time
#找出时间和价格的走势的情况
#目标:若了解2012到2016年远洋山水小区的价格走势,进行房价趋势预测。关注cjdanjia\cjshijian
data1 = data[['time','cjdanjia']]
plt.scatter(data1.time,data.cjdanjia) #自变量只有一个,一元回归 自变量多个:多元回归
from sklearn.linear_model import LinearRegression #引进线性回归模型
X = data1.time
Y =data1.cjdanjia
model = LinearRegression() #调用数据建模函数 建立模型 Y=AX+B
model.fit(pd.DataFrame(X),Y) #用实验数据训练模型求模型参数 A,B
x = [[0],[1800]]
y =model.predict(pd.DataFrame(x)) #利用模型进行预测 一下红色直线
plt.scatter(data1.time,data.cjdanjia)
plt.plot(x,y,c='r')
#多项式回归 非线性 用多项式无限逼近
model2=LinearRegression()
model2.fit(pd.DataFrame({'x2':X*X,'x1':X}),Y) #一元二次回归
x=np.linspace(0,1800)
y=model2.predict(pd.DataFrame({'x2':x*x,'x1':x}))
plt.scatter(data1.time,data.cjdanjia)
plt.plot(x,y,c='r')
from sklearn.preprocessing import PolynomialFeatures
q3=PolynomialFeatures(degree=3)
X3=q3.fit_transform(pd.DataFrame(X))
model3=LinearRegression()
model3.fit(X3,Y)
x=np.linspace(0,1800)
x_=q3.fit_transform(pd.DataFrame(x))
y=model3.predict(x_)
plt.scatter(data1.time,data.cjdanjia)
plt.plot(x,y,c='r')