数据的评估和清洗套路

本文详细介绍了对一家英国电商公司销售数据的评估和清洗过程,包括分析目标、数据简介、数据读取、数据评估(整齐度、干净度)、数据清理以及最终保存清理后的数据。评估环节涉及了数据的缺失值、重复值、不一致数据和无效数据的检查,数据清理则包含了数据类型的转换、缺失值处理和异常值删除。
摘要由CSDN通过智能技术生成

项目:评估和清理英国电商公司销售数据

1、分析目标

此数据分析的目的是,根据市场销售数据,挖掘畅销产品,以便制定更有效的市场策略来提升营收。
本实战项目的目的在于练习评估数据干净和整洁度,并且基于评估结果,对数据进行清洗,从而得到可供下一步分析的数据。

2、数据简介

原始数据集记录了一家英国在线零售公司在2010年12月1日至2011年12月9日期间的所有交易情况,涵盖了该公司在全球不同国家和地区的业务数据。该公司主要销售覆盖各个场景的礼品,包括但不限于生日礼品、结婚纪念品、圣诞礼品等等。该公司的客户群体主要包括批发商和个人消费者,其中批发商占据了相当大的比例。

数据每列的含义如下:
InvoiceNo: 发票号码。6位数,作为交易的唯一标识符。如果这个代码以字母“c”开头,表示这笔交易被取消。
StockCode: 产品代码。5位数,作为产品的唯一标识符。
Description: 产品名称。
Quantity: 产品在交易中的数量。
InvoiceDate: 发票日期和时间。交易发生的日期和时间。
UnitPrice: 单价。价格单位为英镑(£)。
CustomerID: 客户编号。5位数,作为客户的唯一标识符。
Country: 国家名称。客户所居住的国家的名称。

3、读取数据

导入数据分析所需要的库,并通过Pandas的read_csv函数,将原始数据文件"e_commerce.csv"里的数据内容,解析为DataFrame,并赋值给变量original_data。

import pandas as pd
original_data = pd.read_csv("e_commerce.csv")
original_data.head()

执行结果如下:
在这里插入图片描述

4、评估数据

在这一部分,我将对在上一部分建立的original_data这个DataFrame所包含的数据进行评估。
评估主要从两个方面进行:结构和内容,即整齐度和干净度。数据的结构性问题指不符合“每列是一个变量,每行是一个观察值,每个单元格是一个值”这三个标准,数据的内容性问题包括存在丢失数据、重复数据、无效数据等。

(1)评估数据整齐度

original_data.sample(10)

结果如下:
在这里插入图片描述
从抽样的10行数据数据来看,数据符合“每列是一个变量,每行是一个观察值,每个单元格是一个值”,具体来看每行是关于某商品的一次交易,每列是交易相关的各个变量,因此不存在结构性问题。

(2)评估数据干净度

original_data.info()

结果如下:
在这里插入图片描述
从输出结果来看,数据共有541909条观察值,而Description、CustomerID变量存在缺失值。
此外,InvoiceDate的数据类型应为日期,CustomerID的数据类型应为字符串,应当进行数据格式转换。

①评估缺失数据

在了解Description存在缺失值后,根据条件提取出缺失观察值。

original_data[original_data["Description"].isnull()]

结果如下:
在这里插入图片描述
有1454条交易数据缺失Description变量值。
从输出结果来看,这些缺失Description的交易数据,UnitPrice都为0。为了验证猜想,我们增加筛选条件,看是否存在Description变量缺失且UnitPrice不为0的数据。

original_data[(original_data["Description"].isnull()) & (original_data["UnitPrice"] 
  • 42
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值