二手车车辆信息&交易售价数据可视化分析(python)

1、项目介绍

  本数据爬取自印度最大的二手车交易平台 CARS24,包含 8000+ 该平台上交易车辆的关键评估信息。CARS24 成立于 2015 年,总部位于印度古尔冈,是一个在印度、澳大利亚、泰国和阿联酋运营的二手车交易平台,为用户提供一站式二手车交易服务,包括车辆评估、交易、融资、保险等。CARS24 已成为印度最大的二手车交易平台之一,在印度拥有超过 1000 家线下门店。

  本项目通过一系列可视化分析探讨不同类型的汽车价格分布情况、汽车价格与行驶里程之间的关系,汽车价格与购车年份的关系。

2、数据说明

字段

说明

Car Name

汽车品牌或汽车型号

Distance

行驶里程 (单位:公里)

Year Bought

购车年份

Previous Owners

前任车主数量

Location

车管所所在地

Transmission

变速箱类型 (automatic自动 manua手动)

Car Type

车型

Fuel

燃料类型 (汽油、柴油、CNG )

Price

价格

3、数据预览与数据处理

#导入需要的库
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
# 导入数据
df = pd.read_csv('C:/Users/Desktop/cars.csv')
df.head()

  运行结果:

# 查看数据总统概览
print(df.info())
# 查看数据集存在重复值个数
print(df.duplicated().sum())
# 查看数据集缺失值情况
print(df.isna().sum())

  运行结果:可以看到CarName和Year这个需要分析的字段存在缺失值,   且所在比例很小,可以直接删掉。

 

# 删除缺失值   
df=df.dropna(subset=['Car Name','Year'])

 4 、数据探索

4.1不同类型的汽车价格如何分布(分别用柱状图、箱型图进行可视化展示)

# 绘制柱状图
car_type=df['Type'].unique()
plt.figure(figsize=(15, 5)) # 设置画布的大小
bar_width = 0.3   # 条形宽度
carmeam=df['Price'].groupby(df['Type']).mean() #平均值
carmin=df['Price'].groupby(df['Type']).min() #最小值
carmax=df['Price'].groupby(df['Type']).max() #最大值
x=np.arange(len(car_type))
plt.bar(x, carmeam,label='mean',color='#eae4d1',width=bar_width)
plt.bar(x+bar_width, carmax,label='max',color='#c89b40',width=bar_width)
plt.bar(x+2*bar_width, carmin,label='min',color='#f0c239',width=bar_width)
#x标签位置居中,x标签变回中文
plt.xticks(x+bar_width,labels=car_type)
# 用于在图表上添加文本标签
for i in range(len(car_type)):
    plt.text(x[i],carmeam[i],"%.0f" %carmeam[i],ha='center',va='bottom',fontsize=10,alpha=0.5)
    plt.text(x[i]+bar_width,carmax[i],"%.0f" %carmax[i],ha='center',va='bottom',fontsize=10,alpha=0.5)
    plt.text(x[i]+2*bar_width,carmin[i],"%.0f" %carmin[i],ha='center',va='bottom',fontsize=10,alpha=0.5)
plt.legend()  #运行结果里图例名称显示出来
plt.show()

  运行结果:

# 绘制箱线图
plt.figure(figsize=(10, 6))
sns.boxplot(x='Type', y='Price', data=df)
plt.title('Boxplot of Price by Type')
plt.xlabel('Type')
plt.ylabel('Price')
plt.show()

 运行结果:

   结论:不同品牌的车价格上有明显的差异; Lux_Suv的均价 、最低值、最高值均处于最大值;相反HatchBack价格处于最小值。

4.2 汽车价格与行驶里程之间的关系

#绘制散点图
plt.figure(figsize=(10, 6))
plt.scatter(df['Distance'], df['Price'])
plt.title('Scatter Plot of Price vs. Distance')
plt.xlabel('Distance')
plt.ylabel('Price')
plt.grid(True)
plt.show()

运行结果: 

  结论:数据点较为分散汽车价格与行程里程没有明显的线性关系, 但价格的整体趋势随行驶距离的增加而下降。

4.3汽车价格与购车年份的关系

#绘制折线图
df_grouped = df.groupby('Year')['Price'].mean().reset_index()
plt.figure(figsize=(10, 6))
plt.plot(df_grouped['Year'], df_grouped['Price'], marker='o', linestyle='-')
plt.title('Line Plot of Price over Year')
plt.xlabel('Year')
plt.ylabel('Price')
plt.grid(True)
plt.show()

 运行结果:

       结论:购买年份越近, 二手车价格越高, 可以看出购买年份是影响二手车价格的重要因素之一。

  • 11
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值