国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

Python工具pandas篩選數據的15個常用技巧

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

掃碼添加小助手

加入工程師交流群

pandas是Python數據分析必備工具,它有強大的數據清洗能力,往往能用非常少的代碼實現較復雜的數據處理

今天,總結了pandas篩選數據的15個常用技巧,主要包括5個知識點:

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

范圍運算:between(left,right)

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

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

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

apply和isin函數

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

import pandas as pd

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

data

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

先看一下各列的數據類型:

data.dtypes

商品ID int64

類別ID int64

門店編號 object

單價 float64

銷量 float64

訂單ID object

日期 datetime64[ns]

時間 object

dtype: object

下面以實際應用場景為例開始講解:

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

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

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

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

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

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

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

data[data.單價《=10]

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

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

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

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

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

data[data.銷量》2]

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

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

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

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

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

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

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

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

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

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

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

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() #結束日期

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

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

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

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

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

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

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

?第三種,用apply函數實現:

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

data[id_a]

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

?第四種,用between函數實現:

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

data[id_b]

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

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

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

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

data[id_c]

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

?第二種,用isin函數:

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

data[id_i]

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

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

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

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

data[id_c2]

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

為了方便大家學習,我已經將本文數據及代碼打包好,請關注 數據分析與開發 公眾號在后臺回復關鍵字:篩選數據 獲取。

原文標題:一次性總結了pandas提取數據的15種方法,統統只需1行代碼!

文章出處:【微信公眾號:數據分析與開發】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據分析
    +關注

    關注

    2

    文章

    1516

    瀏覽量

    36208
  • python
    +關注

    關注

    57

    文章

    4876

    瀏覽量

    90022

原文標題:一次性總結了pandas提取數據的15種方法,統統只需1行代碼!

文章出處:【微信號:DBDevs,微信公眾號:數據分析與開發】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    1688 商品詳情 API 調用與數據解析 Python 實戰

    你想要的是 1688 商品詳情 API 的 Python 調用與數據解析實戰方案,核心是完成 API 憑證配置、接口請求(含簽名)、響應數據解析、異常處理 的全流程落地,我會提供可直接運行的代碼,并
    的頭像 發表于 02-10 11:23 ?248次閱讀

    Linux進程管理不用愁!這6工具幫你搞定90%場景

    在 Linux 系統中,進程是資源分配的基本單位,無論是服務器運維、程序調試還是日常使用,掌握進程管理工具都是必備技能。今天就帶大家梳理 6 常用的進程管理工具,從查看進程到控制進
    的頭像 發表于 02-04 16:23 ?1460次閱讀
    Linux進程管理不用愁!這6<b class='flag-5'>個</b><b class='flag-5'>工具</b>幫你搞定90%場景

    Linux Shell文本處理神器合集:15工具+實戰例子,效率直接翻倍

    在 Linux 系統中,文本是數據交互的 “通用語言”—— 日志文件、配置文件、數據報表、程序輸出幾乎都以文本形式存在。手動編輯文本不僅繁瑣,還容易出錯,而掌握 Shell 文本處理工具,能讓你用幾行命令完成批量
    的頭像 發表于 02-03 15:42 ?1466次閱讀
    Linux Shell文本處理神器合集:<b class='flag-5'>15</b><b class='flag-5'>個</b><b class='flag-5'>工具</b>+實戰例子,效率直接翻倍

    如何使用Python讀取不間斷數據,并將其傳輸到LabVIEW進行處理?

    使用Python讀取Count,如何將讀取到的數據傳輸至Labview;傳輸過程中Python要保持讀取的動作,不能停止。
    發表于 01-23 11:09

    合同審查、簡歷篩選、審核中小企業AI審核工具怎么選?

    寫在前面 去年幫朋友公司選AI審核工具,踩了不少坑。今天把經驗總結一下,給需要做合同審查、簡歷篩選、內容審核的中小企業做個參考。 先說結論: 需要多種審核工具、預算有限、擔心數據安全的
    的頭像 發表于 12-18 13:43 ?389次閱讀

    應用生命周期管理Perforce ALM 產品更新詳解:標簽和篩選功能

    Perforce ALM更新標簽與篩選功能!支持自定義標簽、收藏常用項、高級條件組合,網頁端和桌面端體驗全面升級,讓復雜的需求管理更高效、追溯更清晰。
    的頭像 發表于 11-25 11:08 ?550次閱讀
    應用生命周期管理Perforce ALM 產品更新詳解:標簽和<b class='flag-5'>篩選</b>功能

    PYQT 應用程序框架及開發工具

    大家好,本團隊此次分享的內容為開發過程中使用到的PYQT 應用程序框架及開發工具。 pYqt 是一多平臺的 python 圖形用戶界面應用程序框架,由于其面向對象、 易擴展(可實現組件編程等
    發表于 10-29 07:15

    Python 給 Amazon 做“全身 CT”——可量產、可擴展的商品詳情爬蟲實戰

    一、技術選型:為什么選 Python 而不是 Java? 結論: “調研階段用 Python,上線后如果 QPS 爆表再考慮 Java 重構。” 二、整體架構速覽(3 分鐘看懂) 三、開發前準備(5
    的頭像 發表于 10-21 16:59 ?515次閱讀
    用 <b class='flag-5'>Python</b> 給 Amazon 做“全身 CT”——可量產、可擴展的商品詳情爬蟲實戰

    有哪些工具可以用于復核裝置數據

    復核裝置數據需根據裝置類型(電氣、機械、工業自動化等)和數據特性(實時性、精度要求)選擇工具,以下是覆蓋全場景的專業工具及應用方法: 一、電氣參數復核
    的頭像 發表于 09-25 14:03 ?574次閱讀
    有哪些<b class='flag-5'>工具</b>可以用于復核裝置<b class='flag-5'>數據</b>?

    termux調試python猜數字游戲

    用termux做一猜數字游戲 下面是在Termux中創建猜數字游戲的步驟及完整實現方案,結合Python實現(最適配Termux環境): ? 一、環境準備(Termux基礎配置) 1.
    發表于 08-29 17:15

    termux如何搭建python游戲

    安裝Python及包管理工具 ```bash apt install -y python python-pip# 自動安裝Python3
    發表于 08-29 07:06

    基礎篇3:掌握Python中的條件語句與循環

    Python編程語言中,條件語句和循環是構成復雜邏輯和數據處理的基石。本篇基礎教程將幫助您深入了解Python中的條件語句和循環結構,讓您能夠更好地控制程序流程。 條件語句 條件語句允許程序根據
    發表于 07-03 16:13

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

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

    ?如何在虛擬環境中使用 Python,提升你的開發體驗~

    。RaspberryPiOS預裝了Python3。干擾系統Python的安裝可能會給你的操作系統帶來問題。安裝第三方Python庫時,請務必使用正確的包管理工具。在Lin
    的頭像 發表于 03-25 09:34 ?811次閱讀
    ?如何在虛擬環境中使用 <b class='flag-5'>Python</b>,提升你的開發體驗~

    零基礎入門:如何在樹莓派上編寫和運行Python程序?

    在這篇文章中,我將為你簡要介紹Python程序是什么、Python程序可以用來做什么,以及如何在RaspberryPi上編寫和運行一簡單的Python程序。什么是
    的頭像 發表于 03-25 09:27 ?2026次閱讀
    零基礎入門:如何在樹莓派上編寫和運行<b class='flag-5'>Python</b>程序?