女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

    文章

    1473

    瀏覽量

    35034
  • python
    +關注

    關注

    56

    文章

    4827

    瀏覽量

    86737

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

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

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

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

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

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

    使用Python實現xgboost教程

    使用Python實現XGBoost模型通常涉及以下幾個步驟:數據準備、模型訓練、模型評估和模型預測。以下是一詳細的教程,指導你如何在Python中使用XGBoost。 1. 安裝XG
    的頭像 發表于 01-19 11:21 ?1374次閱讀

    適用于MySQL和MariaDB的Python連接器:可靠的MySQL數據連接器和數據

    和 MariaDB 數據庫服務器以及托管數據庫服務,以對存儲的數據執行創建、讀取、更新和刪除操作。該解決方案完全實現了 Python DB API 2.0 規范,并作為 Window
    的頭像 發表于 01-17 12:18 ?493次閱讀
    適用于MySQL和MariaDB的<b class='flag-5'>Python</b>連接器:可靠的MySQL<b class='flag-5'>數據</b>連接器和<b class='flag-5'>數據</b>庫

    如何進行元器件篩選

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

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

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

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

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

    RAPIDS cuDF將pandas提速近150倍

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

    如何使用Python構建LSTM神經網絡模型

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

    Kali Linux常用工具介紹

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

    Python常用函數大全

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

    常用的devops工具集成方法

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

    使用Python進行Ping測試

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

    pytorch和python的關系是什么

    在當今的人工智能領域,Python已經成為了最受歡迎的編程語言之一。Python的易學易用、豐富的庫和框架以及強大的社區支持,使其成為了數據科學、機器學習和深度學習等領域的首選語言。而在深度學習領域
    的頭像 發表于 08-01 15:27 ?3281次閱讀

    Python建模算法與應用

    Python作為一種功能強大、免費、開源且面向對象的編程語言,在科學計算、數學建模、數據分析等領域展現出了卓越的性能。其簡潔的語法、對動態輸入的支持以及解釋性語言的本質,使得Python在多個平臺
    的頭像 發表于 07-24 10:41 ?1261次閱讀