本文以来自cars24.com的二手车市场分析为例,使用Pandas进行数据分析。


引言
这个项目主要是研究二手车市场上车辆定价的决定因素,本文将展示如何从汽车销售商网站Cars24上抓取所有的搜索结果,并建立一个包含所有找到的列表的数据库。
使用的工具(库)
Requests Beautiful Soup Pandas Numpy Matplotlib Seaborn Plotly
导入所需的包并加载数据集:

来自网站的原始数据:

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

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

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

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

Data Frame.describe()
可以给出数字数据的描述。这可以帮助我们获得每个数字列的最小值、最大值、平均值、标准偏差等数值。
最后我们得到了560行和9列,并且在Year
、Brand
、Car name
、kilometer
、owner
、fuel
、Emi
、location
和price
等列中没有空值。
探索数据
车辆信息汇总
列类型:
数字 — kilometer
、price
、Emi分类 — Year
、Brand
、Car name
、fuel
、location
、owner
2010年至2022年之间的车型年份 公里数范围从121英里到99944英里不等 价格从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)

Price
和Emi
的相关度为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相关,车龄越长,价格越低。
推荐书单
《Pandas1.x实例精解》
《Pandas1.x实例精解》详细阐述了与Pandas相关的基本解决方案,主要包括Pandas基础,DataFrame基本操作,创建和保留DataFrame,开始数据分析,探索性数据分析,选择数据子集,过滤行,对齐索引,分组以进行聚合、过滤和转换,将数据重组为规整形式,组合Pandas对象,时间序列分析,使用Matplotlib、Pandas和Seaborn进行可视化,调试和测试等内容。此外,该书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。《Pandas1.x实例精解》适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学用书和参考手册。
【半价促销中】购买链接:https://item.jd.com/13255935.html


精彩回顾
《使用Python和OpenPlayground轻松探索大语言模型》
长按关注《Python学研大本营》,加入读者群 长按访问【IT今日热榜】,发现每日技术热点





