数据分析案例-二手车用户数据可视化分析(文末送书)

news2024/11/26 4:45:51

 

🤵‍♂️ 个人主页:@艾派森的个人主页

✍🏻作者简介:Python学习者
🐋 希望大家多多支持,我们一起进步!😄
如果文章对你有帮助的话,
欢迎评论 💬点赞👍🏻 收藏 📂加关注+


目录

1.项目背景

2.数据集介绍

3.技术工具

4.导入数据

5.数据可视化

文末推荐与福利


1.项目背景

        二手车市场作为汽车行业中的重要组成部分,一直备受关注。随着社会经济的不断发展和人们生活水平的提高,越来越多的消费者选择购买二手车。这一趋势使得二手车市场的规模不断扩大,也引起了人们对二手车市场的关注和研究。

        在二手车市场中,用户数据是一个极具价值的研究对象。通过对二手车用户数据的深入分析,可以揭示出用户的购车偏好、消费习惯、区域分布等重要信息。这些信息对于汽车生产企业、销售商以及政府部门来说都具有重要意义。例如,汽车生产企业可以根据用户数据来调整产品结构和定价策略;销售商可以根据用户数据来开展精准营销和销售服务;政府部门可以通过对用户数据的分析来指导相关政策的制定和调整。

        此外,通过对用户数据进行可视化分析,可以更直观地展现数据之间的关联性和趋势变化。通过可视化手段,决策者可以更清晰地了解用户的行为特征和市场变化趋势,从而更准确地制定相应的战略和政策。

        因此,对二手车用户数据进行可视化分析具有重要的理论和实践意义。这不仅有助于深入了解二手车市场的运行情况和用户特征,还能为相关利益方提供决策参考,推动二手车市场的健康发展。

2.数据集介绍

        数据集来源于Kaggle,原始数据集为美国二手车市场用户数据,共有7906条,18个变量,各变量含义如下:

Sales_ID(销售ID)

name(二手车名称)

year(购车年份)

selling_price(二手车当前销售价格)

km_driven(总行驶公里数)

Region(使用地区)

State or Province(使用的州或省)

City(使用城市)

fuel(燃料类型)

seller_type(谁在出售汽车)

transmission(汽车的变速器类型)

owner(业主类型)

mileage(汽车行驶里程)

engine(发动机功率)

Max_power(最大功率)

torque(转矩)

seats(座位数)

sold(二手车是否售出)

3.技术工具

Python版本:3.9

代码编辑器:jupyter notebook

4.导入数据

首先导入数据可视化用到的第三方库并加载数据

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import plotly.express as px
from plotly.offline import iplot 
import warnings
warnings.filterwarnings('ignore')

df = pd.read_csv("UserCarData.csv")
df.head()

查看数据大小

查看数据基本类型 

查看数值型变量的描述性统计

查看非数值型变量的描述性统计

统计缺失值情况 

 

 统计重复值情况

5.数据可视化

# 二手车名称分析
print(f"Most Used Sold Car '{df['name'].value_counts().idxmax()}'")
print(f"Lowest Used Car Sold '{df['name'].value_counts().idxmin()}'")
iplot(px.bar(df['name'].value_counts()[:20],
             labels={'value':'Count','name':'Name'},
             color=df['name'].value_counts()[:20].index,
             text_auto=True,
             title='Top Used Cars Sold'
))

# 二手车年份分析
print(f"Most Year Used Sold Car '{df['year'].value_counts().idxmax()}'")
print(f"Lowest Year Used Car Sold '{df['year'].value_counts().idxmin()}'")
iplot(px.bar(df['year'].value_counts()[:20].sort_index(ascending=False),
             labels={'value':'Count','year':'Year'},
             color_discrete_sequence=['#c72320'],
             text_auto=True,
             title='Top Year Used Cars Sold'
).update_xaxes(type=('category')))

# 地区分析
iplot(px.pie(values=df['Region'].value_counts(),
             names=['Central','West','East','South'],
             title='Region where Sold Used Car'
).update_traces(textinfo='label+percent'))

# 省或州分析
print(f"Top State or Province where Sold Used car '{df['State or Province'].value_counts().idxmax()}'")
print(f"Least State or Province where Sold Used car '{df['State or Province'].value_counts().idxmin()}'")
iplot(px.bar(df['State or Province'].value_counts().sort_values(ascending=True)[:30],
             orientation='h',
             color=df['State or Province'][:30].index,
             title='Top State or Province Sold Used Car',
             labels={'value':'Count'}
))

# 城市分析
print(f"Top City where Sold Used car '{df['City'].value_counts().idxmax()}'")
print(f"Least City where Sold Used car '{df['City'].value_counts().idxmin()}'")
iplot(px.bar(df['City'].value_counts().sort_values(ascending=False)[:20],
             color=df['City'][:20].index,
             title='Top City Sold Used Car',
             labels={'value':'Count'},
             text_auto=True
))

# 燃料分析
print(f"Top Fuel Used in Used car '{df['fuel'].value_counts().idxmax()}'")
print(f"Least Fuel Used in Used car '{df['fuel'].value_counts().idxmin()}'")
iplot(px.pie(values=df['fuel'].value_counts(),
             names=['Diesel','Petrol','CNG','LPG'],
             title='Fuel Used in Used Car'
).update_traces(textinfo='label+percent'))

# 卖家类型分析
print(f"Most Type of Seller '{df['seller_type'].value_counts().idxmax()}'")
iplot(px.pie(values=df['seller_type'].value_counts(),
             names=['Individual','Dealer','Trustmark_Dealer'],
             title='Types of Seller Used Cars'
).update_traces(textinfo='label+percent'))

# 变速器类型
iplot(px.pie(values=df['transmission'].value_counts(),
             names=['Manual','Automatic'],
             title='Types of Transmissions Used in Used Sold Cars'
).update_traces(textinfo='label+percent'))

# 业主类型分析
print(f"Most Owner Sold Used Cars '{df['owner'].value_counts().idxmax()}'")
iplot(px.pie(values=df['owner'].value_counts(),
             names=['First Owner','Second Owner','Third Owner','Fourth Above Owner','Test Drive Car'],
             title='Owners of Used Cars'
).update_traces(textinfo='label+percent'))

# 转矩分析
iplot(px.bar(df['torque'].value_counts().sort_values(ascending=False)[:20],
             orientation='h',
             color=df['torque'][:20].index,
             title='Top Torque Used in Used Sold Cars',
             labels={'value':'Count','torque':'Torque'}
))

# 行驶里程分析
plt.figure(figsize=(15,6))
sns.kdeplot(df['mileage'],fill=True)
plt.xlabel("Mileage")
plt.show()

文末推荐与福利

《AI绘画教程:Midjourney使用方法与技巧从入门到精通》免费包邮送出3本!

内容简介:      

       本书介绍了当前AI绘画领域极具人气的绘画工具——Midjourney,并全面系统地讲述了Midjourney绘画的基本应用技能和相关领域的实战案例。

        全书共分为11章,第1章介绍了Midjourney的基础知识;第2章至第6章讲解了Midjourney 绘画的基础技能,包括Midjourney的注册、登录与订阅流程,Midjourney绘画初体验,使用Midjourney的提示词、指令、参数的方法,以及Midjourney生图方式与实战;第7章至第10章为Midjourney 绘画的实战应用,讲解了Midjourney在设计、绘画、摄影、创意生图等领域的应用,提供了实际案例以供借鉴;第11章为扩展部分,介绍了Midjourney社区的氛围及社区成员之间交流学习等相关知识。

编辑推荐:           

一本书读懂Midjourney绘画,让创意更简单,让设计不再难!

零基础快速入门:Midjourney基础操作+构建有效提示词+精准生图+案例驱动

提示词速查宝典:涵盖平面设计+产品设计+室内设计+建筑设计+时尚设计+工业设计+绘画材料和技法+绘画主题+绘画风格+CG插画+摄影主题+摄影技术等提示词速查手册

超值附赠:超全领域的提示词速查表,Midjourney指令和参数速查表等

  • 抽奖方式:评论区随机抽取3位小伙伴免费送出!
  • 参与方式:关注博主、点赞、收藏、评论区评论“人生苦短,拒绝内卷!”(切记要点赞+收藏,否则抽奖无效,每个人最多评论三次!
  • 活动截止时间:2024-3-9 20:00:00
  • 京东链接:https://item.jd.com/14002721.html

    当当链接:http://product.dangdang.com/29685117.html

 名单公布时间:2024-3-9 21:00:00 

 

资料获取,更多粉丝福利,关注下方公众号获取

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1493137.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

为什么被蜜蜂蛰了会肿得像馒头

有的人却只是一点点小鼓包。 病情分析:蜜蜂体内存在一种有毒物质,其主要成分是蚁酸,这种成分进入人体后,会和血液发生反应,导致皮肤表现出红肿和瘙痒的症状。一些人群还会对蜜蜂表现出过敏反应,此类人群在…

活动策划整体流程需要考虑哪些要素

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 活动策划整体流程中需要考虑的要素非常多,这些要素通常涵盖从策划前的准备到活动结束后的总结,以下是一些关键的考虑要素: 活动目标:确定活…

单片机为什么需要时钟?2种时钟电路对比?

目录 一、晶体振荡器(Crystal Oscillator)的核心知识 二、单片机为什么需要时钟电路? 三、单片机的时钟电路方案 01、外部晶振方案 02、内部晶振方案 四、总结 单片机研发设计的项目中,它的最小电路系统包含 电源电路复位…

QT:颜色选择器

普通 Qt提供了一个现成的QColorDialog类。 用法: #include <QColorDialog>QColor color QColorDialog::getColor(Qt::white, this); if(!color.isValid()){//点击 关闭 或 cancel 颜色无效 }else {ui->text->setText(color.name());//类似##ffffQRgb rgb colo…

Android9-W517-使用NotificationListenerService监听通知

目录 一、前言 二、前提 三、方案 方案一 方案二 方案三 方案四 方案五 方案六 方案七 四、关于NotificationListenerService类头注释 五、结论 一、前言 NotificationListenerService可以让应用监听所有通知&#xff0c;但是无法获得监听通知的权限&#xff0c;如…

x86 Ubuntu上编译eudev给龙芯loongarch64架构主机使用

1、下载eudev库eudev-master.zip&#xff0c;链接&#xff1a;eudev库官方地址 2、下载龙芯的交叉编译工具&#xff1a;loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.2.tar.xz&#xff0c;链接&#xff1a;龙芯交叉编译官方地址 3、交叉编译器环境搭建 (1)、…

Spring-Cloud中服务发现是什么?干什么的?怎么用?

&#x1f413; 是什么 Spring Cloud通过Eureka或Consul等服务注册与发现组件来实现微服务间的相互感知。服务提供者将自己的服务信息注册到注册中心&#xff0c;服务消费者从注册中心获取服务提供者的信息&#xff0c;从而进行服务调用。 &#x1f413; 干什么 在Spring Cloud…

nodejs安装教程(及过程中的易错)

nodejs&#xff1a;Nodejs 是基于 Chrome 的 V8 引擎开发的一个 C 程序&#xff0c;目的是提供一个 JS 的运行环境。 npm&#xff1a;npm 是 Node Package Manager 的缩写&#xff0c;意思是 Node 的包管理系统&#xff0c;是最大的软件包仓库 下载nodejs 首先我们需要在node…

VNC 与 虚拟机 保姆级 快速入门图文指导

Time: 2024年3月5日22:31:49 By[ V ]: MemoryErHero 重要的事情先说三遍: 1 虚拟机内无需安装 VNC-Viewer-7.0.1-Windows 2 虚拟机内无需安装 VNC-Viewer-7.0.1-Windows 3 虚拟机内无需安装 VNC-Viewer-7.0.1-Windows 1 VNC 图文安装 流程 ① VNC-Viewer-7.0.1-Windows.e…

【Python】Python注册微服务到nacos

Python注册微服务到Nacos 1.Nacos部署 github 的nacos项目的发布页&#xff08;Releases alibaba/nacos GitHub &#xff09;&#xff0c;选择所要下载的nacos版本&#xff0c;在nacos下方的assets中选择安装包进行下载。 解压nacos安装包到指定目录。 tar -zxvf nacos-ser…

SpringCloud-MQ消息队列

一、消息队列介绍 MQ (MessageQueue) &#xff0c;中文是消息队列&#xff0c;字面来看就是存放消息的队列。也就是事件驱动架构中的Broker。消息队列是一种基于生产者-消费者模型的通信方式&#xff0c;通过在消息队列中存放和传递消息&#xff0c;实现了不同组件、服务或系统…

微信小程序触屏事件_上划下划事件

一、微信小程序触屏事件 bindtouchstart&#xff1a;手指触摸动作开始 bindtouchmove&#xff1a;手指触摸后移动 bindend&#xff1a;手指触摸动作结束 属性类型说明touchesArray触摸事件&#xff0c;当前停留在屏幕中的触摸点信息的数组 Touch 对象 属性类型说明identi…

【数据结构和算法初阶(C语言)】顺序表+单链表经典例题图文详解(题解大合集,搭配图文演示详解,一次吃饱吃好)

目录 1.移除链表元素 1.1思路1&#xff1a;遍历删除 1. 2 思路2&#xff1a;尾插法 2.反转链表 3.链表的中间节点 3.1解题思想及过程 3.2快慢指针思想解题---变式&#xff1a;返回链表的倒数第K个节点 4.合并两个有序链表 4.1解题思想 1取小的尾插 5.反转链表 6…

【工作经验分享】,金三银四大厂面经总结

面试题 一般Android面试分为两部分&#xff1a;Java部分和Android部分&#xff0c;下面说一下自己面试过程遇到的一些具体题目和一些相关知识点。 一 JAVA相关 1&#xff09;JAVA基础 1.java基本数据类型有哪些&#xff0c;int&#xff0c; long占几个字节 2. 和 equals有什…

Maven【5】在IDEA环境中配置和使用Maven

【1】创建父工程 1.创建 Project 按照idea工程的布局&#xff0c;project相当于父工程&#xff0c;里面的module相当于子工程&#xff08;模块工程&#xff09; 我们先来创建最外层这个父工程&#xff1a;

vue在线查看pdf文件

1.引入组件 npm install --save vue-pdf2、pdf组件页面模板 <template><div class"scrollBox" ><el-dialog :visible.sync"open" :top"1" width"50%" append-to-body><div slot"title"><el…

【强化学习的数学原理-赵世钰】课程笔记(七)时序差分方法

一.内容概述 第五节课蒙特卡洛&#xff08;Mento Carlo&#xff09;方法是全课程中第一次介绍 model-free 的方法&#xff0c;本节课的 Temporal-difference learning&#xff08;TD learning&#xff09;是我们要介绍的第二种 model-free 的方法。基于蒙特卡洛&#xff08;Me…

清澈喷嚏,宝宝舒爽轻松:新生儿打喷嚏的温馨指南

引言 新生儿的喷嚏声&#xff0c;如同小鸟啁啾&#xff0c;是宝宝在探索世界时展示的自然表现。尽管这种可爱的行为可能会让家长产生担忧&#xff0c;但实际上&#xff0c;喷嚏是宝宝健康成长的正常体征之一。在这篇文章中&#xff0c;我们将分享一些关于新生儿打喷嚏的注意事…

答题pk小程序源码技术大解析

答题pk小程序源码解析 在数字化时代&#xff0c;小程序因其便捷性、即用性而受到广泛欢迎。其中&#xff0c;答题pk小程序更是成为了一种寓教于乐的现象。它不仅为用户提供了趣味性的知识竞技平台&#xff0c;还为企业、教育机构等提供了互动营销和知识传播的新途径。本文将对…

Minio容器化部署并整合SpringBoot

1、启动minio容器 docker run -p 9000:9000 -p 9090:9090 --name minio -d --restartalways -e MINIO_ACCESS_KEYminio -e MINIO_SECRET_KEYminio -v /usr/local/minio/data:/data -v /usr/local/minio/config:/root/.minio minio/minio server /data --console-addr…