Task02:数据分析

1.EDA数据探索性分析

读取文件

import warnings
warnings.filterwarnings('ignore')
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import missingno as msnodata_train = pd.read_csv('used_car_train_20200313.csv',sep=' ')
data_testA = pd.read_csv('used_car_testA_20200313.csv',sep=' ')

2.总览数据概况

理论

1.【总览数据概况】
data.describe() – 统计各个特征的非NaN的个数,均值,标准差,最小值,最大值,分位数。返回dataframe格式的统计表。

data.info() – 统计各个特征的dtype,非NaN的个数等。

2.【判断数据缺失和异常】
data.isnull() – 查看全体数据是否为nan,返回各个位置为nan是True还是False。

data.isnull().sum() – 查看每列(每个特征)存在nan的情况,返回每个特征对应缺失值个数。

data[feature].value_counts() – 统计feature的各个值的个数。

实战

观察数据

data_train.head()SaleID    name    regDate    model    brand    bodyType    fuelType    gearbox    power    kilometer    ...    v_5    v_6    v_7    v_8    v_9    v_10    v_11    v_12    v_13    v_14
0    0    736    20040402    30.0    6    1.0    0.0    0.0    60    12.5    ...    0.235676    0.101988    0.129549    0.022816    0.097462    -2.881803    2.804097    -2.420821    0.795292    0.914762
1    1    2262    20030301    40.0    1    2.0    0.0    0.0    0    15.0    ...    0.264777    0.121004    0.135731    0.026597    0.020582    -4.900482    2.096338    -1.030483    -1.722674    0.245522
2    2    14874    20040403    115.0    15    1.0    0.0    0.0    163    12.5    ...    0.251410    0.114912    0.165147    0.062173    0.027075    -4.846749    1.803559    1.565330    -0.832687    -0.229963
3    3    71865    19960908    109.0    10    0.0    0.0    1.0    193    15.0    ...    0.274293    0.110300    0.121964    0.033395    0.000000    -4.509599    1.285940    -0.501868    -2.438353    -0.478699
4    4    111080    20120103    110.0    5    1.0    0.0    0.0    68    5.0    ...    0.228036    0.073205    0.091880    0.078819    0.121534    -1.896240    0.910783    0.931110    2.834518    1.923482
5 rows × 31 columns

特征含义
name - 汽车编码
regDate - 汽车注册时间
model - 车型编码
brand - 品牌
bodyType - 车身类型
fuelType - 燃油类型
gearbox - 变速箱
power - 汽车功率
kilometer - 汽车行驶公里
notRepairedDamage - 汽车有尚未修复的损坏
regionCode - 看车地区编码
seller - 销售方
offerType - 报价类型
creatDate - 广告发布时间
price - 汽车价格
v_0’, ‘v_1’, ‘v_2’, ‘v_3’, ‘v_4’, ‘v_5’, ‘v_6’, ‘v_7’, ‘v_8’, ‘v_9’, ‘v_10’, ‘v_11’, ‘v_12’, ‘v_13’,‘v_14’(根据汽车的评论、标签等大量信息得到的embedding向量)【人工构造 匿名特征】
详细信息

data_train.describe()SaleID    name    regDate    model    brand    bodyType    fuelType    gearbox    power    kilometer    ...    v_5    v_6    v_7    v_8    v_9    v_10    v_11    v_12    v_13    v_14
count    150000.000000    150000.000000    1.500000e+05    149999.000000    150000.000000    145494.000000    141320.000000    144019.000000    150000.000000    150000.000000    ...    150000.000000    150000.000000    150000.000000    150000.000000    150000.000000    150000.000000    150000.000000    150000.000000    150000.000000    150000.000000
mean    74999.500000    68349.172873    2.003417e+07    47.129021    8.052733    1.792369    0.375842    0.224943    119.316547    12.597160    ...    0.248204    0.044923    0.124692    0.058144    0.061996    -0.001000    0.009035    0.004813    0.000313    -0.000688
std    43301.414527    61103.875095    5.364988e+04    49.536040    7.864956    1.760640    0.548677    0.417546    177.168419    3.919576    ...    0.045804    0.051743    0.201410    0.029186    0.035692    3.772386    3.286071    2.517478    1.288988    1.038685
min    0.000000    0.000000    1.991000e+07    0.000000    0.000000    0.000000    0.000000    0.000000    0.000000    0.500000    ...    0.000000    0.000000    0.000000    0.000000    0.000000    -9.168192    -5.558207    -9.639552    -4.153899    -6.546556
25%    37499.750000    11156.000000    1.999091e+07    10.000000    1.000000    0.000000    0.000000    0.000000    75.000000    12.500000    ...    0.243615    0.000038    0.062474    0.035334    0.033930    -3.722303    -1.951543    -1.871846    -1.057789    -0.437034
50%    74999.500000    51638.000000    2.003091e+07    30.000000    6.000000    1.000000    0.000000    0.000000    110.000000    15.000000    ...    0.257798    0.000812    0.095866    0.057014    0.058484    1.624076    -0.358053    -0.130753    -0.036245    0.141246
75%    112499.250000    118841.250000    2.007111e+07    66.000000    13.000000    3.000000    1.000000    0.000000    150.000000    15.000000    ...    0.265297    0.102009    0.125243    0.079382    0.087491    2.844357    1.255022    1.776933    0.942813    0.680378
max    149999.000000    196812.000000    2.015121e+07    247.000000    39.000000    7.000000    6.000000    1.000000    19312.000000    15.000000    ...    0.291838    0.151420    1.404936    0.160791    0.222787    12.357011    18.819042    13.847792    11.147669    8.658418
8 rows × 30 columnsprint(data_train.shape,data_testA.shape)(150000, 31) (50000, 30)

查看缺失值

print(data_train.isnull().sum())
print(data_testA.isnull().sum())SaleID                  0
name                    0
regDate                 0
model                   1
brand                   0
bodyType             4506
fuelType             8680
gearbox              5981
power                   0
kilometer               0
notRepairedDamage       0
regionCode              0
seller                  0
offerType               0
creatDate               0
price                   0
v_0                     0
v_1                     0
v_2                     0
v_3                     0
v_4                     0
v_5                     0
v_6                     0
v_7                     0
v_8                     0
v_9                     0
v_10                    0
v_11                    0
v_12                    0
v_13                    0
v_14                    0
dtype: int64
SaleID                  0
name                    0
regDate                 0
model                   0
brand                   0
bodyType             1413
fuelType             2893
gearbox              1910
power                   0
kilometer               0
notRepairedDamage       0
regionCode              0
seller                  0
offerType               0
creatDate               0
v_0                     0
v_1                     0
v_2                     0
v_3                     0
v_4                     0
v_5                     0
v_6                     0
v_7                     0
v_8                     0
v_9                     0
v_10                    0
v_11                    0
v_12                    0
v_13                    0
v_14                    0
dtype: int64

从统计情况看,训练数据中model、bodyType、fuelType、gearbox存在缺失值

查看是否有异常值

print(Train_data.info())

结果如下:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 150000 entries, 0 to 149999
Data columns (total 31 columns):
 #   Column             Non-Null Count   Dtype  
---  ------             --------------   -----  
 0   SaleID             150000 non-null  int64  
 1   name               150000 non-null  int64  
 2   regDate            150000 non-null  int64  
 3   model              149999 non-null  float64
 4   brand              150000 non-null  int64  
 5   bodyType           145494 non-null  float64
 6   fuelType           141320 non-null  float64
 7   gearbox            144019 non-null  float64
 8   power              150000 non-null  int64  
 9   kilometer          150000 non-null  float64
 10  notRepairedDamage  150000 non-null  object 
 11  regionCode         150000 non-null  int64  
 12  seller             150000 non-null  int64  
 13  offerType          150000 non-null  int64  
 14  creatDate          150000 non-null  int64  
 15  price              150000 non-null  int64  
 16  v_0                150000 non-null  float64
 17  v_1                150000 non-null  float64
 18  v_2                150000 non-null  float64
 19  v_3                150000 non-null  float64
 20  v_4                150000 non-null  float64
 21  v_5                150000 non-null  float64
 22  v_6                150000 non-null  float64
 23  v_7                150000 non-null  float64
 24  v_8                150000 non-null  float64
 25  v_9                150000 non-null  float64
 26  v_10               150000 non-null  float64
 27  v_11               150000 non-null  float64
 28  v_12               150000 non-null  float64
 29  v_13               150000 non-null  float64
 30  v_14               150000 non-null  float64
dtypes: float64(20), int64(10), object(1)

代码示例

  • 载入各种数据科学以及可视化库
  • 载入数据
  • 总览数据概况
  • 判断数据缺失和异常
  • 了解预测值的分布
  • 特征分为类别特征和数字特征,并对类别特征查看unique分布
  • 数字特征分析
  • 类别特征分析
  • 用pandas_profiling生成数据报告

数据挖掘-二手车价格预测 Task02:数据分析相关推荐

  1. 数据挖掘-二手车价格预测 Task04:建模调参

    数据挖掘-二手车价格预测 Task04:建模调参 模型调参部分 利用xgb进行五折交叉验证查看模型的参数效果 ## xgb-Model xgr = xgb.XGBRegressor(n_estimat ...

  2. 数据挖掘二手车价格预测 Task05:模型融合

    模型融合是kaggle等比赛中经常使用到的一个利器,它通常可以在各种不同的机器学习任务中使结果获得提升.顾名思义,模型融合就是综合考虑不同模型的情况,并将它们的结果融合到一起.模型融合主要通过几部分来 ...

  3. 【数据分析与挖掘实战】二手车价格预测1数据分析与特征构造详解(有数据集合代码)

    一.题目概况 数据集:点击下载 根据给定的数据集,建立模型,二手汽车的交易价格. 来自 Ebay Kleinanzeigen 报废的二手车,数量超过 370,000,包含 20 列变量信息,为了保证 ...

  4. 数据挖掘-二手车价格预测 Task03:特征工程

    一.特征工程理论: 常见的特征工程包括: 一.导入数据 import warnings warnings.filterwarnings('ignore') import pandas as pd im ...

  5. 【算法竞赛学习】二手车交易价格预测-Task2数据分析

    二手车交易价格预测-Task2 数据分析 二. EDA-数据探索性分析 Tip:此部分为零基础入门数据挖掘的 Task2 EDA-数据探索性分析 部分,带你来了解数据,熟悉数据,和数据做朋友,欢迎大家 ...

  6. 【组队学习】【24期】河北邀请赛(二手车价格预测)

    河北邀请赛(二手车价格预测) 开源内容: https://github.com/datawhalechina/team-learning-data-mining/tree/master/SecondH ...

  7. Python二手车价格预测(二)—— 模型训练及可视化

    系列文章目录 一.Python数据分析-二手车数据获取用于机器学习二手车价格预测 二.Python二手车价格预测(一)-- 数据处理 文章目录 系列文章目录 前言 一.明确任务 二.模型训练 1.引入 ...

  8. 二手车价格预测数据探索

    二手车价格预测数据探索 1.赛题理解 [类型]属于回归问题. [数据字段] 训练数据字段: 字段名字 含义 类型 name 汽车编码 int regDate 汽车注册时间 int model 车型编码 ...

  9. 【数据挖掘】金融风控 Task02 数据分析

    [数据挖掘]金融风控 Task02 数据分析 1. 探索性数据分析(EDA)概述 1. 1 探索性数据分析概念 1.2 探索性数据分析目的 1.3 探索性数据分析(EDA)与传统统计分析(Classi ...

最新文章

  1. 问题-[Delphi]MainFrame.pas(4340): E2036 Variable required
  2. 文件,文件夹的创建和删除
  3. 启动DevStack的各项服务
  4. Qt的json对象不具备类似指针、引用的行为导致的更新不成功问题解决
  5. Java多线程同步机制
  6. 虚拟机安装Ubuntu无法通过Xshell登录
  7. Mac环境下安装Pod
  8. 【线性代数01】矩阵的转置和逆
  9. 中职 计算机 教案,中职计算机基础教案.doc
  10. 分享一下支付宝的支付(soEasy)
  11. C++代码和可执行程序在x86和arm上的区别
  12. 时态的重建--适合理工直男的钟平老师逻辑英语学习笔记
  13. 使用Qt开发中国象棋(六):将军和死棋检测
  14. rtmplib rtmp协议过程分析
  15. mysql联合查询注入防护,SQL注入之BypassWaf
  16. 【bzoj2844】albus就是要第一个出场 高斯消元
  17. Zk中组建显示模型mold都有哪些
  18. 小白兔写话_小白兔看图写话作文
  19. 主机迁移上云 - 文件级别
  20. mysql卸载报错2503_MySQL之卸载重装等问题

热门文章

  1. widows下 python环境变量配置
  2. IOS 学习笔记 2015-03-24 OC-API-不可变字符串
  3. 【POJ3415】 Common Substrings (SA+单调栈)
  4. 【重要+细节】LeetCode 149. Max Points on a Line
  5. Github上多人协作方式之一
  6. mysql的安装与卸载
  7. 【题解】Luogu P2147 [SDOI2008]洞穴勘测
  8. 20165328 第八周学习总结
  9. 更换pip源,解决pip install安装包慢的问题
  10. ferror,perror,cleaner