重点先跑模型:
数据:
http://sofasofa.io/competition.php?id=1
代码:
需要修改一下文件的地址:
代码运行的时候一步一步来:
# -*- coding: utf-8 -*-
# import 常用包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 数据完整化和数据数值化
from sklearn.preprocessing import Imputer
from sklearn.preprocessing import LabelEncoder
# 特征提取和特征选择
from sklearn.feature_selection import f_regression
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
from sklearn.decomposition import PCA
# 数据归一化和数据标准化
from sklearn.preprocessing import StandardScaler
from sklearn.preprocessing import Normalizer
# 数据分割
from sklearn.model_selection import train_test_split
from sklearn.model_selection import KFold
# 模型构建
from sklearn.ensemble import RandomForestRegressor
import lightgbm as lgb
# 误差评估
from sklearn.metrics import mean_squared_error
from sklearn.metrics import mean_absolute_error
# 参数调节
from sklearn.model_selection import GridSearchCV
# -----------------------------------------------加载数据,数据处理,特征提取,特征选择------------------------------------------------------
# 加载数据
train = pd.read_csv('E:/dataset/reg/bike/train.csv')
test = pd.read_csv('E:/dataset/reg/bike/test.csv')
submit = pd.read_csv('E:/dataset/reg/bike/sample_submit.csv')
# ----------------------------------------------------------------------数据分割和模型使用-------------------------------------------------------------------------
predictors = ['city', 'hour', 'is_workday', 'weather', 'temp_1', 'temp_2', 'wind']
X_train, X_test, Y_train, Y_test = train_test_split(train[predictors], train["y"], test_size=0.2)
model = RandomForestRegres