简单的决策树模型

数据处理

熟悉数据

import pandas as pd
# 保存文件路径
data_path = '../input/melbourne-housing-snapshot/melb_data.csv' 
# 使用pd的read_csv(path)读取数据并存储在data
data = pd.read_csv(data_path)
#查看数据摘要,describe()
data.describe()

筛选数据

你的数据集有太多变量,难以完全理解,甚至难以整齐地打印出来。如何将这些令人眼花缭乱的数据缩减到你可以理解的范围呢?我们将从使用直觉选择几个变量开始。

# 通过 DataFrame 的 columns 属性查看数据集中的所有列
data.columns
# 可使用dropna 删除缺失值,也可用其他方法对缺失值进行处理
data= data.dropna(axis=0)

在这里插入图片描述

选择x,y

#预测目标是价格Price属性
y = data.Price
#手动选择特征
x_features = ['Rooms', 'Bathroom', 'Landsize', 'Lattitude', 'Longtitude']
X = data[x_features]

模型构建

使用 scikit-learn 库来创建您的模型。在编码时,这个库被写作 sklearn。Scikit-learn 无疑是处理通常存储在 DataFrame 中的数据类型时最受欢迎的建模库。

构建和使用模型的步骤如下:

  1. 定义(Define):模型将是哪种类型?决策树?其他类型的模型?模型类型的其他参数也需要指定。
  2. 拟合(Fit):从提供的数据中捕捉模式。这是建模的核心。
  3. 预测(Predict):字面意思就是进行预测。
  4. 评估(Evaluate):确定模型预测的准确性。

下面是一个使用 scikit-learn, 定义决策树模型并用特征和目标变量进行拟合的示例。

from sklearn.tree import DecisionTreeRegressor

# 模型定义
melbourne_model = DecisionTreeRegressor(random_state=1)

# 模型拟合,使用fit
melbourne_model.fit(X, y)

#模型预测,使用predict预测X的前五个
predictions = melbourne_model.predict(X.head())
print(predictions)

模型评估看下一章。

更多推荐