亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

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

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

3天內不再提示

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

數據分析與開發(fā) ? 來源:數據分析與開發(fā) ? 作者:數據分析與開發(fā) ? 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

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

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

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

責任編輯:haq

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

    關注

    2

    文章

    1495

    瀏覽量

    35845
  • python
    +關注

    關注

    57

    文章

    4850

    瀏覽量

    89336

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

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

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

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

    termux調試python猜數字游戲

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

    termux如何搭建python游戲

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

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

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

    ?如何在虛擬環(huán)境中使用 Python,提升你的開發(fā)體驗~

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

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

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

    使用Python實現xgboost教程

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

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

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

    如何進行元器件篩選

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

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

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

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

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

    RAPIDS cuDF將pandas提速近150倍

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

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

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

    Kali Linux常用工具介紹

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

    使用Python進行圖像處理

    下面是一關于使用Python在幾行代碼中分析城市輪廓線的快速教程。
    的頭像 發(fā)表于 11-07 10:14 ?810次閱讀
    使用<b class='flag-5'>Python</b>進行圖像處理