对比excel,学习pandas实现数据表检查的9种方法
↑↑↑关注后"星标"简说Python
人人都可以简单入门Python、爬虫、数据分析 简说Python推荐 来源:python数据分析之禅 作者:小dull鸟
最近打算做一个“对比excel,学习pandas”系列,内容包括包括数据检查、数据清洗、数据预处理、数据提取、数据筛选、数据汇总、数据统计等7个方面,帮助读者更好的掌握这两大主流数据分析工具,今天是第一篇--《对比excel,pandas实现数据表检查的9种方式》
我们在用python做数据处理的时候,通常数据量都比较大,用肉眼无法直观的了解数据的整体情况,必须先用pandas给数据做一个全身“体检”,为后面的数据清洗和预处理做好准备。下面给大家介绍9种数据检查的9种方式:
1.查看数据的行数和列数
excel中可以通过ctrl+shift+向下箭头查看行数,通过ctrl+shift+向右箭头查看列数。
pandas是用shape函数查看数据表的行数和列数:
import pandas as pd
data=pd.read_excel('超市运营数据模板.xlsx')
data.shape
(3478, 8)
返回的结果表示数据表有3478行,8列
2.查看数据的详细信息
info函数可以查看数据表的纬度、列名称、数据类型、非空值和内存使用情况等信息:
data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3478 entries, 0 to 3477
Data columns (total 8 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 商品ID 3478 non-null int64
1 类别ID 3478 non-null int64
2 门店编号 3478 non-null object
3 单价 3478 non-null float64
4 销量 3478 non-null float64
5 订单ID 3478 non-null object
6 日期 3478 non-null datetime64[ns]
7 时间 3478 non-null object
dtypes: datetime64[ns](1), float64(2), int64(2), object(3)
memory usage: 217.5+ KB
3.查看数据格式
excel通过选中数据,在开始菜单中的数值类型来判断数据的格式:
pandas使用dtypes函数来返回数据格式。可以一次性查看所有数据的格式,也可以指定一列单独查看:
data.dtypes
商品ID int64
类别ID int64
门店编号 object
单价 float64
销量 float64
订单ID object
日期 datetime64[ns]
时间 object
dtype: object
结果返回了各列的数据类型
data['商品ID'].dtype
dtype('int64')
4.查看空值
excel中查看空值的方法是使用“定位条件”功能对数据表中的空值进行定位:
pandas中利用isnull函数检验空值,返回的结果是布尔值,可以对整个数据进行检查:
data.isnull()
也可以单独对某一列进行空值检查:
data['商品ID'].isnull()
5.查看唯一值
excel中查看唯一值的方法是使用条件格式对唯一值进行颜色标记,依次点击开始——条件格式——突出显示单元格规则——重复值:
python中使用unique函数查看唯一值,只能对数据表中的特定列进行检查,返回的是删除重复项后的结果,代码如下:
data['商品ID'].unique()
array([30006206, 30163281, 30200518, ..., 30026026, 30038941, 30206214],
dtype=int64)
6.查看数据表数值
pandas使用values函数查看数据表中的数值,以数组形式返回:
data.values
array([[30006206, 915000003, 'CDNL', ..., '20201003CDLG000210052759',
Timestamp('2011-01-03 00:00:00'), '09:56'],
[30163281, 914010000, 'CDNL', ..., '20201003CDLG000210052759',
Timestamp('2011-01-04 00:00:00'), '09:56'],
[30200518, 922000000, 'CDNL', ..., '20201003CDLG000210052759',
Timestamp('2011-01-05 00:00:00'), '09:56'],
...,
[30033854, 910000000, 'CDXL', ..., '20201003CDLG000510025149',
Timestamp('2020-07-09 00:00:00'), '11:17'],
[30206214, 910000000, 'CDXL', ..., '20201003CDLG000510025150',
Timestamp('2020-07-10 00:00:00'), '11:40'],
[30129510, 925090000, 'CDXL', ..., '20201003CDLG000510025151',
Timestamp('2020-07-11 00:00:00'), '11:50']], dtype=object)
7.查看列名称
pandas的columns函数用来单独查看数据表中的列名称
data.columns
Index(['商品ID', '类别ID', '门店编号', '单价', '销量', '订单ID', '日期', '时间'], dtype='object')
8.查看行名称
pandas的columns函数用来单独查看数据表中的列名称
data.index
RangeIndex(start=0, stop=3478, step=1)
9.查看前10行数据
pandas的head函数用来查看数据表中的前N行数据,可以自行设置行数,默认显示前10行:
#查看前9行
data.head(9)
10.查看后10行数据
与head相反的函数tail,用来查看数据表的后N行数据,用法与head一致:
#查看后9行
data.tail(9)
扫码查看我朋友圈
获取最新学习资源
学习更多: 整理了我开始分享学习笔记到现在超过250篇优质文章,涵盖数据分析、爬虫、机器学习等方面,别再说不知道该从哪开始,实战哪里找了
“点赞”传统美德不能丢