99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python工具pandas篩選數(shù)據(jù)的15個常用技巧

數(shù)據(jù)分析與開發(fā) ? 來源:數(shù)據(jù)分析與開發(fā) ? 作者:數(shù)據(jù)分析與開發(fā) ? 2021-03-30 10:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

pandas是Python數(shù)據(jù)分析必備工具,它有強大的數(shù)據(jù)清洗能力,往往能用非常少的代碼實現(xiàn)較復(fù)雜的數(shù)據(jù)處理

今天,總結(jié)了pandas篩選數(shù)據(jù)的15個常用技巧,主要包括5個知識點:

比較運算:==、《、》、》=、《=、!=

范圍運算:between(left,right)

字符篩選:str.contains(pattern或字符串,na=False)

邏輯運算:&(與)、|(或)、not(取反)

比較函數(shù):eq, ne, le, lt, ge, gt(相當于==,=!,《=,《,》=,》)

apply和isin函數(shù)

”下面以超市運營數(shù)據(jù)為例,給大家逐個講解首先讀取數(shù)據(jù):

import pandas as pd

data=pd.read_excel(‘超市運營數(shù)據(jù)模板.xlsx’)

data

8820b96c-8e33-11eb-8b86-12bb97331649.png

先看一下各列的數(shù)據(jù)類型:

data.dtypes

商品ID int64

類別ID int64

門店編號 object

單價 float64

銷量 float64

訂單ID object

日期 datetime64[ns]

時間 object

dtype: object

下面以實際應(yīng)用場景為例開始講解:

1.篩選門店編號為‘CDXL’的運營數(shù)據(jù)①第一種方法,用比較運算符‘==’:

data[data.門店編號==‘CDXL’]

8bb1a37a-8e33-11eb-8b86-12bb97331649.png

②第二種方法,用比較函數(shù)‘eq’:

data[data[‘門店編號’].eq(‘CDXL’)]

8d57158e-8e33-11eb-8b86-12bb97331649.png

2.篩選單價小于等于10元的運營數(shù)據(jù)③第一種方法,用比較運算符‘《=’:

data[data.單價《=10]

90a6426e-8e33-11eb-8b86-12bb97331649.png

④第二種方法,用比較函數(shù)‘le’:

data[data[‘單價’].le(10)]

928adb4e-8e33-11eb-8b86-12bb97331649.png

3.篩選銷量大于2000的運營數(shù)據(jù)⑤第一種方法,用比較運算符‘》=’:

data[data.銷量》2]

92f569a0-8e33-11eb-8b86-12bb97331649.png

⑥第二種方法,用比較函數(shù)‘ge’:

data[data[‘銷量’].ge(2)]

92f569a0-8e33-11eb-8b86-12bb97331649.png

4.篩選除門店‘CDXL’外的運營數(shù)據(jù)⑦第一種方法,用比較運算符‘!=’:

data[data.門店編號!=‘CDXL’]

9345c238-8e33-11eb-8b86-12bb97331649.png

⑧第二種方法,用比較函數(shù)‘ne’:

data[data[‘門店編號’].ne(‘CDXL’)]

9397ac38-8e33-11eb-8b86-12bb97331649.png

5.篩選2020年5月的運營數(shù)據(jù)首先將日期格式化:

data[‘日期’]=data[“日期”].values.astype(‘datetime64’) #如果已為日期格式則此步驟可省略

data[‘日期’]

import datetime

s_date = datetime.datetime.strptime(‘2020-04-30’, ‘%Y-%m-%d’).date() #起始日期

e_date = datetime.datetime.strptime(‘2020-06-01’, ‘%Y-%m-%d’).date() #結(jié)束日期

⑨第一種方法,用邏輯運算符號‘》’ ‘《’和‘&’:

Pandasdatetime64[ns]不能直接與datetime.date相比,需要用pd.Timestamp進行轉(zhuǎn)化

data[(data.日期》pd.Timestamp(s_date))&(data.日期《pd.Timestamp(e_date))]

93dc75ca-8e33-11eb-8b86-12bb97331649.png

⑩第二種,用比較函數(shù)‘gt’‘lt’和‘&’:

data[(data[‘日期’].lt(pd.Timestamp(e_date)))&(data[‘日期’].gt(pd.Timestamp(s_date)))]

94be8c4e-8e33-11eb-8b86-12bb97331649.png

?第三種,用apply函數(shù)實現(xiàn):

id_a=data.日期.apply(lambda x: x.year ==2020 and x.month==5)

data[id_a]

950240e2-8e33-11eb-8b86-12bb97331649.png

?第四種,用between函數(shù)實現(xiàn):

id_b=data.日期.between(pd.Timestamp(s_date),pd.Timestamp(e_date))

data[id_b]

953ad6f0-8e33-11eb-8b86-12bb97331649.png

6.篩選“類別ID”包含‘000’的數(shù)據(jù)?第一種,用contains函數(shù):

data[‘類別ID’]=data[‘類別ID’].values.astype(‘str’) #將該列轉(zhuǎn)換為字符數(shù)據(jù)類型

id_c=data.類別ID.str.contains(‘000’,na=False)

data[id_c]

95c1ec76-8e33-11eb-8b86-12bb97331649.png

?第二種,用isin函數(shù):

id_i=data.類別ID.isin([‘000’]) #接受一個列表

data[id_i]

很遺憾,isin函數(shù)搞不定,因為它只能判斷該列中元素是否在列表中

7.篩選商品ID以“301”開頭的運營數(shù)據(jù)?需要用contains函數(shù)結(jié)合正則表達式使用:

data[‘商品ID’]=data[‘商品ID’].values.astype(‘str’) #將該列轉(zhuǎn)換為字符數(shù)據(jù)類型

id_c2=data.商品ID.str.contains(‘301d{5}’,na=False)

data[id_c2]

95c1ec76-8e33-11eb-8b86-12bb97331649.png

為了方便大家學(xué)習(xí),我已經(jīng)將本文數(shù)據(jù)及代碼打包好,請關(guān)注 數(shù)據(jù)分析與開發(fā) 公眾號在后臺回復(fù)關(guān)鍵字:篩選數(shù)據(jù) 獲取。

原文標題:一次性總結(jié)了pandas提取數(shù)據(jù)的15種方法,統(tǒng)統(tǒng)只需1行代碼!

文章出處:【微信公眾號:數(shù)據(jù)分析與開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)分析
    +關(guān)注

    關(guān)注

    2

    文章

    1472

    瀏覽量

    35009
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86656

原文標題:一次性總結(jié)了pandas提取數(shù)據(jù)的15種方法,統(tǒng)統(tǒng)只需1行代碼!

文章出處:【微信號:DBDevs,微信公眾號:數(shù)據(jù)分析與開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    python入門圣經(jīng)-高清電子書(建議下載)

    和Pygal 等強大的Python 庫和工具介紹,以及列表、字典、if 語句、類、文件與異常、代碼測試等內(nèi)容; 第二部分將理論付諸實踐,講解如何開發(fā)三項目,包括簡單的Python
    發(fā)表于 04-10 16:53

    OSS Nokalva:適用于Python的OSS NAS工具

    執(zhí)行以下任務(wù):編寫軟件來創(chuàng)建、處理、調(diào)試和測試 NAS 消息。在處理 3GPP 版本中的更改時,此任務(wù)特別耗時且容易出錯?,F(xiàn)在客戶可以專注于他們的核心業(yè)務(wù)。 用于 Python 的 OSS NAS 工具
    的頭像 發(fā)表于 02-09 09:16 ?449次閱讀
    OSS Nokalva:適用于<b class='flag-5'>Python</b>的OSS NAS<b class='flag-5'>工具</b>

    如何進行元器件篩選?

    電子元件的核心作用在電子設(shè)備中,電子元件扮演著基礎(chǔ)而關(guān)鍵的角色,它們是電子通信、數(shù)據(jù)處理和自動化控制等技術(shù)領(lǐng)域的基石。篩選的必要性為了確保電子元件在其整個使用壽命內(nèi)都能穩(wěn)定工作,避免因元件本身的缺陷
    的頭像 發(fā)表于 12-19 12:37 ?921次閱讀
    如何進行元器件<b class='flag-5'>篩選</b>?

    Kaggle知識點:使用大模型進行特征篩選

    數(shù)據(jù)科學(xué)數(shù)據(jù)挖掘的核心是是對海量數(shù)據(jù)進行有效的篩選和分析。傳統(tǒng)上數(shù)據(jù)篩選依賴于
    的頭像 發(fā)表于 12-03 01:06 ?1715次閱讀
    Kaggle知識點:使用大模型進行特征<b class='flag-5'>篩選</b>

    使用Python進行串口通信的案例

    當然!以下是一使用Python進行串口通信的簡單示例。這個示例展示了如何配置串口、發(fā)送數(shù)據(jù)以及接收數(shù)據(jù)。我們將使用 pyserial 庫,這是一
    的頭像 發(fā)表于 11-22 09:11 ?1427次閱讀

    RAPIDS cuDF將pandas提速近150倍

    在 NVIDIA GTC 2024 上,NVIDIA 宣布,RAPIDS cuDF 當前已能夠為 950 萬 pandas 用戶帶來 GPU 加速,且無需修改代碼。
    的頭像 發(fā)表于 11-20 09:52 ?650次閱讀
    RAPIDS cuDF將<b class='flag-5'>pandas</b>提速近150倍

    如何使用Python構(gòu)建LSTM神經(jīng)網(wǎng)絡(luò)模型

    numpy tensorflow 2. 準備數(shù)據(jù) LSTM模型通常用于序列數(shù)據(jù),比如時間序列預(yù)測或文本生成。這里我們以一簡單的時間序列預(yù)測為例。假
    的頭像 發(fā)表于 11-13 10:10 ?1552次閱讀

    Kali Linux常用工具介紹

    Kali Linux 虛擬機中自帶了大量滲透測試工具,涵蓋了信息收集、漏洞利用、口令破解、漏洞掃描等多個方面。 以下是按分類簡要介紹一部分常用工具的使用方法: 使用方法只能當做參考,**詳細
    的頭像 發(fā)表于 11-11 09:29 ?1573次閱讀

    Python常用函數(shù)大全

    Python 世界里,有一些寶藏函數(shù)和模塊,它們可以讓你編程更輕松、代碼更高效。這篇文章將帶你一一認識這些神器,讓你的開發(fā)生活瞬間輕松不少!
    的頭像 發(fā)表于 10-27 17:20 ?895次閱讀

    常用的devops工具集成方法

    常用的devops工具集成方法涵蓋了軟件開發(fā)和運維的各個方面,從版本控制到自動化構(gòu)建、測試、部署和監(jiān)控。這些工具的有效集成可以幫助團隊提高協(xié)作效率,減少溝通障礙,實現(xiàn)快速、高質(zhì)量的軟件交付。
    的頭像 發(fā)表于 10-09 11:21 ?525次閱讀

    使用Python進行Ping測試

    在網(wǎng)絡(luò)工程中,Ping測試是一種常用的網(wǎng)絡(luò)診斷工具,用于檢查網(wǎng)絡(luò)連接的可達性和響應(yīng)時間。Ping測試通過向目標主機發(fā)送ICMP(Internet Control Message Protocol
    的頭像 發(fā)表于 08-12 17:56 ?999次閱讀
    使用<b class='flag-5'>Python</b>進行Ping測試

    pytorch和python的關(guān)系是什么

    在當今的人工智能領(lǐng)域,Python已經(jīng)成為了最受歡迎的編程語言之一。Python的易學(xué)易用、豐富的庫和框架以及強大的社區(qū)支持,使其成為了數(shù)據(jù)科學(xué)、機器學(xué)習(xí)和深度學(xué)習(xí)等領(lǐng)域的首選語言。而在深度學(xué)習(xí)領(lǐng)域
    的頭像 發(fā)表于 08-01 15:27 ?3263次閱讀

    Python建模算法與應(yīng)用

    Python作為一種功能強大、免費、開源且面向?qū)ο蟮木幊陶Z言,在科學(xué)計算、數(shù)學(xué)建模、數(shù)據(jù)分析等領(lǐng)域展現(xiàn)出了卓越的性能。其簡潔的語法、對動態(tài)輸入的支持以及解釋性語言的本質(zhì),使得Python在多個平臺
    的頭像 發(fā)表于 07-24 10:41 ?1240次閱讀

    opencv-python和opencv一樣嗎

    不一樣。OpenCV(Open Source Computer Vision Library)是一開源的計算機視覺和機器學(xué)習(xí)軟件庫,它提供了大量的圖像和視頻處理功能。OpenCV-Python
    的頭像 發(fā)表于 07-16 10:38 ?2065次閱讀

    網(wǎng)絡(luò)爬蟲,Python數(shù)據(jù)分析

    電子發(fā)燒友網(wǎng)站提供《網(wǎng)絡(luò)爬蟲,Python數(shù)據(jù)分析.pdf》資料免費下載
    發(fā)表于 07-13 09:27 ?2次下載