欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数据挖掘-二手车价格预测

程序员文章站 2022-03-25 23:32:56
...

数据挖掘-二手车价格预测

赛题简介

本次新人赛是Datawhale与天池联合发起的0基础入门系列赛事第一场 —— 零基础入门数据挖掘之二手车交易价格预测大赛。

赛题以二手车市场为背景,要求选手预测二手汽车的交易价格,这是一个典型的回归问题。通过这道赛题来引导大家走进AI数据竞赛的世界,主要针对于于竞赛新人进行自我练习、自我提高。

数据获取:
https://tianchi.aliyun.com/competition/entrance/231784/information

方法

采用xgb、lgb以及randomforest三种数据挖掘常用模型,并做了模型融合改进预测结果。

代码

1、导入函数工具箱

## 基础工具
import numpy as np
import pandas as pd
import warnings
import matplotlib
import matplotlib.pyplot as plt
import seaborn as sns
from scipy.special import jn
from IPython.display import display, clear_output
import time

warnings.filterwarnings('ignore')
%matplotlib inline

## 模型预测的
from sklearn import linear_model
from sklearn import preprocessing
from sklearn.svm import SVR
from sklearn.ensemble import RandomForestRegressor,GradientBoostingRegressor

## 数据降维处理的
from sklearn.decomposition import PCA,FastICA,FactorAnalysis,SparsePCA

import lightgbm as lgb
import xgboost as xgb

## 参数搜索和评价的
from sklearn.model_selection import GridSearchCV,cross_val_score,StratifiedKFold,train_test_split
from sklearn.metrics import mean_squared_error, mean_absolute_error

2、数据读取及浏览

## 通过Pandas对于数据进行读取 (pandas是一个很友好的数据读取函数库)
Train_data = pd.read_csv('datalab/231784/used_car_train_20200313.csv', sep=' ')
TestA_data = pd.read_csv('datalab/231784/used_car_testA_20200313.csv', sep=' ')

## 输出数据的大小信息
print('Train data shape:',Train_data.shape)
print('TestA data shape:',TestA_data.shape)
## 通过.head() 简要浏览读取数据的形式
Train_data.head()
## 通过 .info() 简要可以看到对应一些数据列名,以及NAN缺失信息
Train_data.info()
## 通过 .columns 查看列名
Train_data.columns
TestA_data.info()

遇到的问题

1、xgboost库的安装
刚开始安装走了弯路,最终采用以下方法成功:
1)首先按照如下步骤安装:https://www.jianshu.com/p/ee71ca3a7252
2)一般来说就成功了,若仍旧报错,则找到安装位置,将xgboost.whl文件手动复制到
C:\Users\zheya\AppData\Roaming\Python\Python37\site-packages\xgboost文件夹中,因为有可能自动安装到了与xgboost并列的文件夹中。