關(guān)于Series的index的方法和屬性使用說明
Series的index的方法和屬性
from pandas import Series,DataFrame
obj = Series([1,2,3,5,8,12],index=[1,2,3,4,5,6])

obj2 = Series([2,6,12,15,18,20],index=[0,1,2,3,4,5])

1、append,合并
obj.append(obj2)

2、obj.diff(),每行與上一行的差值,Difference with previous row


與前第2行的差值

與倒數(shù)前一行的差值

3、obj3.unique() 計算唯一值

4、is_unique,判斷是否有重復值,如果沒有返回True,否則返回False

5、is_monotonic,當各元素均大于等于前值時,返回True,否則返回False

6、drop,刪除


7、isin,判斷是否包含在參數(shù)中

8、reindex,創(chuàng)建一個新的索引對象

Series中str屬性的方法+index索引的特點
Pandas字符串處理
前面我們已經(jīng)使用了字符串的處理函數(shù):
df["bWendu"].str.replace("℃", "").astype('int32')1.Pandas的字符串處理的基本介紹
- 使用方法:先獲取Series的str屬性,然后在屬性上調(diào)用函數(shù);
- 只能在字符串列上使用,不能數(shù)字列上使用;
- Dataframe上沒有str屬性和處理方法
- Series.str并不是Python原生字符串,而是自己的一套方法,不過大部分和原生str很相似;
2.一些常用方法的使用舉例
①切分字符串,split()
# (1)把DataFrame列中字符串以','分隔開,每個元素分開后存入一個列表里
series=data['列名'].str.split(',') ?
#(2)參數(shù)expand,這個參數(shù)取True時,會把切割出來的內(nèi)容當做一列,產(chǎn)生多列。
series=data['列名'].str.split(',',expand=True) ?
#(3)只要第一列
series=data['列名'].str.split(',',expand=True)[0] ?②替換,replace()
# ?#用‘-'代替‘,'
series=data['列名'].str.replace(',','-') ?③是否包含表達式,contains()
#返回的是布爾值。
series=data['列名'].str.contains('we') ? ??④查找所有符合正則表達式的字符findall()
# 以數(shù)組的形式返回。
series=data['列名'].str.findall("[a-z]") ?⑤計算字符串的長度,len()
series=data['列名'].str.len() ?
⑥去除前后的空白字符,strip()
series=data['列名'].str.strip() ? series=data['列名'].str.rstrip() ? ?#去除后面的空白字符 series=data['列名'].str.lstrip() ? ?#去除前面的空白字符
⑦其他的一些判斷方法
isalnum() # 是否全部是數(shù)字和字母組成 isalpha() # 是否全部是字母 isdigit() # 是否全部都是數(shù)字 isspace() # 是否空格 islower() # 是否全部小寫 isupper() # 是否全部大寫 istitle() # 是否只有首字母為大寫,其他字母為小寫
3.使用過程中的一些注意
鏈式使用:當執(zhí)行完一次str的方法后,一般不可以繼續(xù)使用str的方法,需要再次使用str的屬性,再使用str的方法
Series.str默認就開啟了正則表達式模式
# 正則表達式替換,從2015年12月10如中將年月日替換為20151210
df["中文日期"].str.replace("[年月日]", "")index索引的特點
1.特點
- 更方便的數(shù)據(jù)查詢,使用index查詢的時候可以獲得性能提升;
- 自動的數(shù)據(jù)對齊功能;
- 更多更強大的數(shù)據(jù)結(jié)構(gòu)支持;
2.為什么使用index索引可以提高查詢性能呢?
- 如果index是唯一的,Pandas會使用哈希表優(yōu)化,查詢性能為O(1);
- 如果index不是唯一的,但是有序,Pandas會使用二分查找算法,查詢性能為O(logN);
- 如果index是完全隨機的,那么每次查詢都要掃描全表,查詢性能為O(N);
所以我們再對于完全隨機索引的查詢情況,如果提前排序,可以提高查詢速率
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python+opencv 讀取文件夾下的所有圖像并批量保存ROI的方法
今天小編就為大家分享一篇python+opencv 讀取文件夾下的所有圖像并批量保存ROI的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01
Python生成requirements.txt的兩種最新方法
在Python項目開發(fā)中requirements.txt文件扮演著至關(guān)重要的角色,它記錄了項目所需的所有依賴包及其精確版本號,這篇文章主要介紹了Python生成requirements.txt的兩種最新方法,需要的朋友可以參考下2025-04-04
詳解Python匿名函數(shù)(lambda函數(shù))
這篇文章主要介紹了Python匿名函數(shù)(lambda函數(shù)),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04
Python使用Matplotlib繪制專業(yè)柱狀圖的完整指南
柱狀圖是數(shù)據(jù)可視化中最常用的圖表類型之一,用于展示分類數(shù)據(jù)的數(shù)值比較,Python的Matplotlib庫提供了強大的柱狀圖繪制功能,下面我們將一步步學習如何創(chuàng)建專業(yè)級的柱狀圖,感興趣的小伙伴跟著小編一起來看看吧2025-07-07
Python?中strip()函數(shù)詳細說明及使用方法
strip()函數(shù)是Python字符串方法之一,用于處理字符串的前導和尾隨空白字符,它返回一個新字符串,該字符串是原始字符串去除前導和尾隨空格(包括空格、制表符、換行符等)后的結(jié)果,這篇文章主要介紹了Python?中strip()函數(shù)詳細說明及使用方法,需要的朋友可以參考下2024-02-02
python?使用?with?open()?as?讀寫文件的操作方法
這篇文章主要介紹了python?使用?with?open()as?讀寫文件的操作代碼,寫文件和讀文件是一樣的,唯一區(qū)別是調(diào)用open()函數(shù)時,傳入標識符'w'或者'wb'表示寫文本文件或?qū)懚M制文件,需要的朋友可以參考下2022-11-11
解決PyCharm不在run輸出運行結(jié)果而不是再Console里輸出的問題
這篇文章主要介紹了解決PyCharm不在run輸出運行結(jié)果而不是再Console里輸出的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09
詳解Django關(guān)于StreamingHttpResponse與FileResponse文件下載的最優(yōu)方法
這篇文章主要介紹了詳解Django關(guān)于StreamingHttpResponse與FileResponse文件下載的最優(yōu)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-01-01

