数据分析实战,用Pandas分析二手车市场行情

引言

这个项目主要是研究二手车市场上车辆定价的决定因素,本文将展示如何从汽车销售商网站Cars24上抓取所有的搜索结果,并建立一个包含所有找到的列表的数据库。

使用的工具(库)

  • Requests

  • Beautiful Soup

  • Pandas

  • Numpy

  • Matplotlib

  • Seaborn

  • Plotly

导入所需的包并加载数据集:

来自网站的原始数据:

现在,可以看到有一个名为Unnamed:0的列。这一列一定是在抓取数据并将其保存到CSV文件中时添加的。因此,下一步就是删除数据。

数据清洗:

现在将删除Unnamed:0列,然后再次清洗,使数据可视化。

清洗后的Dataframe:

数据概览:

DataFrame.info()将为项目提供有关数据类型和每一列中非空值的数量的信息。

Describe()每一列的数字特征和信息:

  • Data Frame.describe()可以给出数字数据的描述。这可以帮助我们获得每个数字列的最小值、最大值、平均值、标准偏差等数值。

最后我们得到了560行和9列,并且在YearBrandCar namekilometerownerfuelEmilocationprice等列中没有空值。

探索数据

车辆信息汇总

列类型:
  • 数字 — kilometerpriceEmi

  • 分类 — YearBrandCar namefuellocationowner

  1. 2010年至2022年之间的车型年份

  2. 公里数范围从121英里到99944英里不等

  3. 价格从1.62万到24.36万卢比不等

数据可视化

单变量:

最畅销的品牌:
a[‘Brand’].value_counts().plot(kind=’bar’)
plt.xlabel(‘Brand’)
plt.ylabel(‘Highest selling’)
plt.show()

  • 从上面的图表中可以看到Tata是最畅销的汽车。

价格分布:

sns.histplot(a[‘price(in_lk)],kde=True)   

  • 平均价格约为60k,二手车的中位数为50k。

  • 价格分布更像是一个长尾分布和右偏度。这在价格分布上是非常正常的。

燃料

px.bar(a[‘fuel’].value_counts())   

  • 人们拥有的大多数汽车是汽油类型的。

  • 人们购买最多的是汽油车,然后是柴油车和压缩天然气车。

双变量分析

不同数量的前车主的车辆列表 :

sns.barplot(x=a[‘owner’],y=a[‘price(in_lk)],errorbar=None)   

  • 从上面的图中可以看出,第一任车主的平均驾驶里程较少。

  • 从第一任车主那里买车更好。

来自不同州的车辆列表

a.groupby([‘Location’])[‘year’].count().sort_values(ascending=False).plot(kind=’bar’, figsize=(10,6))
plt.ylabel(‘Number of listings per state’, fontsize=12)
plt.xlabel(‘State’, fontsize=12)
plt.title(‘Listings per State’, fontsize=18)
plt.show()

  • Hyderabad、Mumbai、Pune是二手车上市数量最多的三个州,这三个州占印度汽车市场的32%。

比较年份和价格:

sns.lineplot(x=a[“year”],y=a[“price(in_lk)],errorbar=None)   

  • 我们可以看到,当年份增加时,价格也在增加。

燃料类型将如何影响转售价格?

sns.boxplot(x=a[“fuel”],y=a[“price(in_lk)])   

  • 从上图中可以注意到,大多数燃料类型的柴油车价格高于其他汽油和压缩天然气。

  • 这就是为什么大多数人想购买汽油车的原因。

多变量分析:

sns.barplot(x=a[“year”],y=a[“price(in_lk)],errorbar=None,hue=a[“owner”])   

  • 在大多数年份里,第一任车主的汽车现价都很高。

  • 当汽车以高价出售时,第一任车主的售价比第二任和第三任车主的售价高。

相关性:

可以使用corr()函数找到各种特征之间的相关性。

sns.heatmap(a.corr(),annot=True)   

  • PriceEmi的相关度为0.61。

  • Price一栏与Emi高度相关,因此我们可以使用任何一个变量进行分析。

plt.figure(figsize=(18,7))
sns.barplot(x=a[“Location”],y=a[“price(in_lk)],hue=a[“Location”],errorbar=None)
plt.xticks(rotation = 90)
plt.show()

  • 从上图可以看出,Gurgaon地区的汽车价格高于其他地区。

结论

从可视化中,我们发现了以下结论:

  • Hyderabad,Mumbai,Pune是排名前三的二手车市场。

  • 在大多数年份里,第一任车主的汽车现价都很高。

  • 当汽车出售时,第一任车主的售价比第二任和第三任车主的售价高。

  • 我们可以看到,在Gurgaon地区的汽车价格高于其他地区。

  • 在印度最畅销的汽车制造商是Tata、Maruti。

  • 当二手车定价时,最重要的特征包括里程数、车主和车型年份。从可视化中,我们看到里程数越高,价格越低。

  • 车型价格也与Emi相关,车龄越长,价格越低。

最后

感谢你们的阅读和喜欢,我收藏了很多技术干货,可以共享给喜欢我文章的朋友们,如果你肯花时间沉下心去学习,它们一定能帮到你,干货内容包括:

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习等习教程。带你从零基础系统性的学好Python!

👉Python所有方向的学习路线👈

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

👉Python入门学习视频👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

👉Python副业兼职路线&方法👈

学好 Python 不论是就业还是做副业赚钱都不错,但要学会兼职接单还是要有一个学习规划。

在这里插入图片描述

👉Python学习礼包👈

包括:Python开发工具、Python热门电子书、Python100道练习题、Python爬虫&数据分析&人工智能&办公自动化等学习资料

在这里插入图片描述

👉Python实战练手案例&源码👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉Python大厂面试资料👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


在这里插入图片描述

👉 这份完整版的Python全套学习资料已经上传,朋友们如果需要可以扫描下方CSDN官方认证二维码或者点击链接免费领取保证100%免费

点击免费领取《CSDN大礼包》:Python入门到进阶资料 & 实战源码 & 兼职接单方法 安全链接免费领取

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Pandas是一个开源的数据分析库,提供了高效的数据结构和数据分析工具。它是基于NumPy构建的,可以处理各种类型的数据,包括结构化的数据和时间序列数据。 在进行Pandas数据分析实战时,你可以按照以下步骤进行: 1. 导入Pandas库:在开始之前,需要导入Pandas库。你可以使用以下代码导入Pandas: ```python import pandas as pd ``` 2. 读取数据:使用Pandas的`read_csv()`函数读取数据文件。例如,如果你的数据文件是一个CSV文件,你可以使用以下代码读取: ```python data = pd.read_csv('data.csv') ``` 3. 数据探索:使用Pandas的各种函数和方法来探索数据。你可以使用以下代码查看数据的前几行: ```python data.head() ``` 4. 数据清洗:清洗数据是数据分析的重要步骤之一。你可以使用Pandas的函数和方法来处理缺失值、重复值等。例如,使用以下代码删除重复值: ```python data = data.drop_duplicates() ``` 5. 数据分析:使用Pandas的函数和方法进行数据分析。你可以使用各种统计函数、聚合函数和可视化工具来分析数据。例如,使用以下代码计算某一列的平均值: ```python mean_value = data['column_name'].mean() ``` 6. 数据可视化:使用Pandas和其他可视化库(如Matplotlib和Seaborn)来可视化数据。你可以使用各种图表和图形来展示数据的特征和趋势。例如,使用以下代码绘制柱状图: ```python import matplotlib.pyplot as plt data['column_name'].plot(kind='bar') plt.show() ``` 这些是进行Pandas数据分析实战的基本步骤。当然,具体的分析任务可能会有所不同,你可以根据自己的需求和数据特点进行相应的操作和分析

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值