Python萬里長征6(非教程)pandas篩選數據三基礎、三核心、三高級

文章目錄

    • 一、背景
    • 二、布爾索引
      • 2.1 總結
    • 三、進階核心用法(實用高效)
      • 3.1 多條件組合
      • 3.2 字符串表達式(類似SQL)
      • 3.3 針對字符串的正則匹配
    • 四、高級方法(依賴基礎)
      • 4.1 函數應用(如apply()或lambda)?
      • 4.2 缺失值篩選
      • 4.3 loc與iloc?
    • 五、總結

一、背景

2025年8月22日了,回頭查了下第一個python萬里長征的文章還是2018年11月。但是沒有寫幾篇,堅持寫這個還是挺難的,回頭一想,八年多還在這個崗位上,還是有半杯欣慰的,來干了!cheers!

最近一年,數據分析做的內容比較多,但是回頭看,對pandas這個東西的使用,還是有一層迷霧感的。所以寫點東西,記錄下心路旅程,也許未來某一天看看自己的筆記,會微笑多那么一點點,足夠了。等待未來callback的一天。

二、布爾索引

今天讓ai出了個幾個選擇題,做了幾個題消耗些時間,看了個解釋,發現一句話,布爾索引是標準的篩選方式。
在這里插入圖片描述
深入研究了下,布爾索引過濾是pandas中通過邏輯條件篩選數據的一種方法,他屬于三大基礎方法之一,另兩個基礎是isinbetween
一個是二值化篩選,一個是多值篩選,一個是范圍篩選。

2.1 總結

新手記住三基礎就可以了。后面看進階

三、進階核心用法(實用高效)

想打個高效,總是打出來搞笑!!!(i fu le you 輸入法)

也是分三類記下吧,都是為了更好的回憶。

3.1 多條件組合

通過&、|、~組合條件,需注意括號使用,例如:df[(df[‘A’] > 10) & (df[‘B’] == ‘X’)]

3.2 字符串表達式(類似SQL)

query()方法,支持字符串表達式

例如:df.query(“A > 10 and B == ‘X’”)。適合復雜條件場景?,這個嚴格來說也是多條件組合,只不過是sql化的用法。

3.3 針對字符串的正則匹配

str.contains()?
針對字符串列的正則匹配,例如:df[df[‘CVE ID’].str.contains(‘CVE-’)]

四、高級方法(依賴基礎)

4.1 函數應用(如apply()或lambda)?

自定義復雜邏輯,例如:df[df.apply(lambda x: x[‘A’] + x[‘B’] > 100, axis=1)]

遇事不決可問春風 春風不語即隨本心!!!

4.2 缺失值篩選

使用isna()或notna(),例如:df[df[‘列名’].notna()]

4.3 loc與iloc?

loc:基于標簽和布爾索引篩選行或列,例如:df.loc[df[‘A’] > 10, [‘B’, ‘C’]]?

輸入格式:loc[] 的通用語法是 df.loc[行選擇, 列選擇]。若省略列部分(如本例),則返回所有列。

iloc:基于整數位置篩選(較少用于邏輯條件),輸入格式類似loc

這里loc和iloc容易混淆,所以還是看下區別:

特性lociloc
索引類型標簽(顯式)整數位置(隱式)
切片包含性包含結束標簽!!!不包含結束位置!!!(Python 風格)
示例df.loc[‘a’:‘c’]df.iloc[0:2]

如需按位置選擇數據,應使用 iloc。

五、總結

pandas的篩選數據肯定是不止這些方法,但是要更好的記憶,必須是有量化層次做基礎的,三基礎、三核心、三高級并不是絕對的,看適合個人的記憶,別讓大腦處于混亂朦朧的狀態即可,真正的進階需要用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/919905.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/919905.shtml
英文地址,請注明出處:http://en.pswp.cn/news/919905.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

阿里云上部署nuxt開發的項目(SSG和SSR混合渲染)

1.項目說明及配置 // nuxt.config.ts export default defineNuxtConfig({// ... 其他配置// Nitro 引擎讓你可以非常精細地為每個頁面定義渲染策略nitro: {// 預設取決于你的部署平臺,例如 vercel, netlify, static 等,或者node-serverpreset: vercel, // 這里以 Vercel 為例…

RWA加密金融高峰論壇星鏈品牌全球發布 —— 穩定幣與Web3的香港新篇章

隨著全球數字金融不斷演進,穩定幣(Stablecoin)與真實世界資產(RWA)已成為連接傳統金融與Web3世界的核心通道。行業投研報告預計,RWA市場規模將在未來五年突破10萬億美元,而穩定幣正加速進入跨境…

玩轉Vue3高級特性:Teleport、Suspense與自定義渲染

玩轉Vue3高級特性:Teleport、Suspense與自定義渲染 掌握Vue3革命性渲染特性,構建更靈活強大的前端應用 一、高級渲染特性全景概覽 Vue3引入了三大革命性渲染特性,徹底改變了開發體驗: 特性 解決的問題 典型應用場景 Teleport DOM結…

Qt/C++開發監控GB28181系統/錄像文件回放/自動播放下一個錄像文件/倍速回放/錄像文件下載

一、前言說明 之前錄像文件的回放功能已經是好的,后面用戶提出來一個新的合理的需求,那就是播放完上一個錄像文件,希望自動播放下一個文件,之前是播放完成后就關閉了,需要手動雙擊錄像文件才會再次播放,這…

Kali Linux 發布重構版Vagrant鏡像:通過命令行快速部署預配置DebOS虛擬機

Kali Linux團隊宣布對其Vagrant鏡像構建流程進行重大升級,通過改用DebOS系統替代原有的HashiCorp Packer工具,顯著簡化了預配置虛擬機的開發與部署流程。此次更新還附帶實用速查表,幫助安全從業者快速上手。技術架構革新Vagrant box是可通過命…

關于鏈式二叉樹的幾道OJ題目

今天筆者帶領讀者做幾道鏈式二叉樹OJ題目,希望讀者和筆者一起思考! 1.965. 單值二叉樹 - 力扣(LeetCode) 這道題思路不難想,首先知道單值二叉樹的定義:所有結點的值都相同,傳入的是第一個根節…

【ECharts】2. ECharts 性能優化

動態(按需)加載異步子組件 之前說過 ECharts 如何封裝,今天來講一講 ECharts 如何做性能優化。 對于之前 ECharts 的封裝子組件,我們可以使用 component 動態組件的方式進行渲染,并傳參。 并且使用 import 動態導入搭配 defineAsyncCompon…

如何創建自己的 Minecraft 世界

步驟1:準備虛擬服務器運行以下命令來更新系統的軟件包列表并應用所有待處理的升級:sudo apt update sudo apt upgrade -y您的系統已更新完畢,您已準備好進行下一步。第 2 步:安裝依賴項并創建安全用戶LinuxGSM 需要一些軟件才能正…

vue中監聽頁面滾動位置

vue中監聽頁面滾動位置問題描述實現代碼1. 獲取頁面被卷起的高度2. 監聽滾動事件問題描述 頁面滾動到指定位置時,展示側邊欄導航。 實現代碼 1. 獲取頁面被卷起的高度 使用 e.target.scrollTop可以獲取到頁面向上滾動了多少像素,代碼如下:…

docker:compose

docker三劍客:compose、swarm、machinemachine是在不同環境(不同的操作系統平臺上安裝)下部署docker的compose是做容器編排的swarm是做docker集群管理的Compose 簡介口任務( task ) : 一個容器被稱為一個任…

GaussDB 數據庫架構師修煉(十八) SQL引擎-計劃管理-SQL PATCH

1 業務背景GaussDB的優化器生成計劃不優的情況下,對DBA調優過程中不對業務sql修改場景下,提供3種計劃管理,分別為plan hint,sql patch,spm。2 sql patch的使用場景在發現查詢語句的執行計劃、執行方式未達預期的場景下,可以通過創…

函數式編程從入門到精通

1.概述1.1為什么學&#xff1f;* 能夠看懂公司里的代碼 * 大數量下處理集合效率高 * 代碼可讀性高 * 消滅嵌套地獄//查詢未成年作家評分在70分以上的書籍&#xff0c;由于流的影響所以作家和書籍可能會重復出現&#xff0c;所以要去重public void test1() {List<Book> bo…

Overleaf 中文報錯和中文不顯示問題的解決方案

Overleaf是一個很方便的在線latex編輯工具。但在最初使用Overleaf的時候&#xff0c;是不是有很多小伙伴會遇到模板中中文報錯或者中文不顯示的問題呢&#xff1f; 本文將帶你一步步解決這個問題~ 中文報錯 在點擊重新編譯按鈕后&#xff0c;中文報錯問題一般會有如下圖紅框顯示…

前后端聯調場景以及可能會遇到的問題

一、異地和在一起辦公的方式 首先&#xff0c;在一起辦公&#xff08;同局域網&#xff09;的情況&#xff0c;最常用的應該是直接使用后端的局域網 IP 進行聯調&#xff0c;因為同一網絡內設備可以直接通信。步驟方面&#xff0c;需要后端提供 IP 和端口&#xff0c;前端配置…

【T113自制板卡】1 - 原理圖說明

文章目錄1、前言2、板卡資源總覽3、電源3.1、板卡供電3.2、電源方案4、OTG接口5、調試串口6、用戶LED7、FLASH8、按鍵9、BLE MESH10、Wi-Fi11、MIC12、喇叭接口13、MIPI接口1、前言 這幾天跟著小智學長的課程畫了一塊t113的板子。本文將描述該板卡的硬件說明。 2、板卡資源總…

WiFi有網絡但是電腦連不上網是怎么回事?該怎么解決?

有時候&#xff0c;咱們用電腦上網&#xff0c;打開WiFi一看&#xff0c;信號滿格&#xff0c;狀態欄顯示已連接&#xff0c;本來想著可以愉快地看個番、查個資料、玩個游戲了&#xff0c;結果一打開瀏覽器&#xff0c;直接完犢子了&#xff0c;網頁都打不開。這時候再看狀態&a…

【golang】制作linux環境+golang的Dockerfile | 如何下載golang鏡像源

一、關于如何下載docker images 這里需要大家自行科學上網如果沒有話&#xff0c;下面可以使用我自行打包的golang 的docker images 注意科學上網要開啟TUN模式二、golang鏡像源 1、阿里云公開鏡像 如果找不到golang包的小伙伴可以使用我的公開阿里鏡像docker pull registry.cn…

Day58 Java面向對象13 instanceof 和 類型轉換

Day58 Java面向對象13 instanceof 和 類型轉換 1.instanceof關鍵字 instanceof關鍵字的作用是判斷一個對象是否是某個類或其子類的實例,它返回一個布爾值true/false dog1 instanceof Dog; //返回true dog1 instanceof Animals; //返回true dog1 instanceof Object; //返回…

GEO優化案例:如何通過“知識圖譜+權威信號”提升品牌AI信任度

引言&#xff1a; “在AI日益成為用戶信息入口的今天&#xff0c;品牌信息能否被AI賦予‘權威’標簽&#xff0c;直接決定了其在搜索結果中的可見度和用戶采信度。移山科技正是這方面的專家。” 一、行業趨勢概覽&#xff1a;AI時代的品牌信任與GEO的價值 2025年&#xff0c…

讓數據可視化更簡單:Embedding Atlas使用指南

Embedding Atlas&#xff1a;交互式的嵌入可視化工具 在大數據時代&#xff0c;如何有效地理解和利用高維數據變得愈發重要。Embedding Atlas 是一款致力于提供大型嵌入&#xff08;embeddings&#xff09;交互式可視化的工具&#xff0c;允許用戶對嵌入數據進行可視化、交叉過…