對(duì)比excel,學(xué)習(xí)pandas實(shí)現(xiàn)數(shù)據(jù)表檢查的9種方法
↑↑↑關(guān)注后"星標(biāo)"簡(jiǎn)說(shuō)Python
人人都可以簡(jiǎn)單入門Python、爬蟲、數(shù)據(jù)分析 簡(jiǎn)說(shuō)Python推薦 來(lái)源:python數(shù)據(jù)分析之禪 作者:小dull鳥(niǎo)

最近打算做一個(gè)“對(duì)比excel,學(xué)習(xí)pandas”系列,內(nèi)容包括包括數(shù)據(jù)檢查、數(shù)據(jù)清洗、數(shù)據(jù)預(yù)處理、數(shù)據(jù)提取、數(shù)據(jù)篩選、數(shù)據(jù)匯總、數(shù)據(jù)統(tǒng)計(jì)等7個(gè)方面,幫助讀者更好的掌握這兩大主流數(shù)據(jù)分析工具,今天是第一篇--《對(duì)比excel,pandas實(shí)現(xiàn)數(shù)據(jù)表檢查的9種方式》
我們?cè)谟胮ython做數(shù)據(jù)處理的時(shí)候,通常數(shù)據(jù)量都比較大,用肉眼無(wú)法直觀的了解數(shù)據(jù)的整體情況,必須先用pandas給數(shù)據(jù)做一個(gè)全身“體檢”,為后面的數(shù)據(jù)清洗和預(yù)處理做好準(zhǔn)備。下面給大家介紹9種數(shù)據(jù)檢查的9種方式:
1.查看數(shù)據(jù)的行數(shù)和列數(shù)
excel中可以通過(guò)ctrl+shift+向下箭頭查看行數(shù),通過(guò)ctrl+shift+向右箭頭查看列數(shù)。
pandas是用shape函數(shù)查看數(shù)據(jù)表的行數(shù)和列數(shù):
import pandas as pd
data=pd.read_excel('超市運(yùn)營(yíng)數(shù)據(jù)模板.xlsx')
data.shape
(3478, 8)返回的結(jié)果表示數(shù)據(jù)表有3478行,8列
2.查看數(shù)據(jù)的詳細(xì)信息
info函數(shù)可以查看數(shù)據(jù)表的緯度、列名稱、數(shù)據(jù)類型、非空值和內(nèi)存使用情況等信息:
data.info()
<class 'pandas.core.frame.DataFrame'>RangeIndex: 3478 entries, 0 to 3477Data columns (total 8 columns):# Column Non-Null Count Dtype--- ------ -------------- -----0 商品ID 3478 non-null int641 類別ID 3478 non-null int642 門店編號(hào) 3478 non-null object3 單價(jià) 3478 non-null float644 銷量 3478 non-null float645 訂單ID 3478 non-null object6 日期 3478 non-null datetime64[ns]7 時(shí)間 3478 non-null objectdtypes: datetime64[ns](1), float64(2), int64(2), object(3)memory usage: 217.5+ KB
3.查看數(shù)據(jù)格式
excel通過(guò)選中數(shù)據(jù),在開(kāi)始菜單中的數(shù)值類型來(lái)判斷數(shù)據(jù)的格式:

pandas使用dtypes函數(shù)來(lái)返回?cái)?shù)據(jù)格式。可以一次性查看所有數(shù)據(jù)的格式,也可以指定一列單獨(dú)查看:
data.dtypes
商品ID int64類別ID int64門店編號(hào) object單價(jià) float64銷量 float64訂單ID object日期 datetime64[ns]時(shí)間 objectdtype: object
結(jié)果返回了各列的數(shù)據(jù)類型
data['商品ID'].dtype
dtype('int64')
4.查看空值
excel中查看空值的方法是使用“定位條件”功能對(duì)數(shù)據(jù)表中的空值進(jìn)行定位:

pandas中利用isnull函數(shù)檢驗(yàn)空值,返回的結(jié)果是布爾值,可以對(duì)整個(gè)數(shù)據(jù)進(jìn)行檢查:
data.isnull()
也可以單獨(dú)對(duì)某一列進(jìn)行空值檢查:
data['商品ID'].isnull()
5.查看唯一值
excel中查看唯一值的方法是使用條件格式對(duì)唯一值進(jìn)行顏色標(biāo)記,依次點(diǎn)擊開(kāi)始——條件格式——突出顯示單元格規(guī)則——重復(fù)值:


python中使用unique函數(shù)查看唯一值,只能對(duì)數(shù)據(jù)表中的特定列進(jìn)行檢查,返回的是刪除重復(fù)項(xiàng)后的結(jié)果,代碼如下:
data['商品ID'].unique()
array([30006206, 30163281, 30200518, ..., 30026026, 30038941, 30206214],dtype=int64)
6.查看數(shù)據(jù)表數(shù)值
pandas使用values函數(shù)查看數(shù)據(jù)表中的數(shù)值,以數(shù)組形式返回:
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函數(shù)用來(lái)單獨(dú)查看數(shù)據(jù)表中的列名稱
data.columns
Index(['商品ID', '類別ID', '門店編號(hào)', '單價(jià)', '銷量', '訂單ID', '日期', '時(shí)間'], dtype='object')
8.查看行名稱
pandas的columns函數(shù)用來(lái)單獨(dú)查看數(shù)據(jù)表中的列名稱
data.index
RangeIndex(start=0, stop=3478, step=1)
9.查看前10行數(shù)據(jù)
pandas的head函數(shù)用來(lái)查看數(shù)據(jù)表中的前N行數(shù)據(jù),可以自行設(shè)置行數(shù),默認(rèn)顯示前10行:
#查看前9行
data.head(9)
10.查看后10行數(shù)據(jù)
與head相反的函數(shù)tail,用來(lái)查看數(shù)據(jù)表的后N行數(shù)據(jù),用法與head一致:
#查看后9行
data.tail(9)
掃碼查看我朋友圈
獲取最新學(xué)習(xí)資源
學(xué)習(xí)更多: 整理了我開(kāi)始分享學(xué)習(xí)筆記到現(xiàn)在超過(guò)250篇優(yōu)質(zhì)文章,涵蓋數(shù)據(jù)分析、爬蟲、機(jī)器學(xué)習(xí)等方面,別再說(shuō)不知道該從哪開(kāi)始,實(shí)戰(zhàn)哪里找了
“點(diǎn)贊”傳統(tǒng)美德不能丟 
