關(guān)于Series的index的方法和屬性使用說(shuō)明
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() 計(jì)算唯一值

4、is_unique,判斷是否有重復(fù)值,如果沒(méi)有返回True,否則返回False

5、is_monotonic,當(dāng)各元素均大于等于前值時(shí),返回True,否則返回False

6、drop,刪除


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

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

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

