當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Pandas Series.str.index()用法及代碼示例


Python是進行數據分析的一種出色語言,主要是因為以數據為中心的Python軟件包具有奇妙的生態係統。 Pandas是其中的一種,使導入和分析數據更加容易。

Pandas str.index()方法用於搜索並返回子字符串在係列中每個字符串的特定部分(起始和結束之間)的最低索引。此方法的用法方式與str.find()類似,但在未找到的情況下,str.index()不會返回-1,而是給出ValueError。

用法:Series.str.index(sub, start=0, end=None)

參數:
sub:要在係列文本值中搜索的字符串或字符
start:要在係列文本值中搜索的字符串或字符
end:要在係列文本值中搜索的字符串或字符

返回類型:找到的子串索引最少的係列。

要下載以下示例中使用的數據集,請單擊此處。在以下示例中,使用的 DataFrame 包含一些NBA球員的數據。下麵是任何操作之前的數據幀圖像。

範例1:在每個字符串中都存在子字符串時查找索引

在此示例中,“ e”作為子字符串傳遞。由於在所有5個字符串中都存在“ e”,因此將返回其出現次數最少的索引。在應用任何操作之前,使用.dropna()方法刪除了空行。

# importing pandas module  
import pandas as pd 
  
# reading csv file from url  
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv") 
   
# dropping null value columns to avoid errors 
data.dropna(inplace = True) 
  
# extracting 5 rows 
short_data = data.head().copy() 
  
# calling str.index() method 
short_data["Index Name"]= short_data["Name"].str.index("e") 
  
# display 
short_data

輸出:
如輸出圖像所示,返回的“ e”序列中最小的索引並存儲在新列中。


範例2:

在此示例中,在前5行中搜索“ a”。由於每個字符串中都不存在“ a”,因此將返回值錯誤。要處理錯誤,請嘗試使用和除外。

# importing pandas module  
import pandas as pd 
  
# reading csv file from url  
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv") 
   
# dropping null value columns to avoid errors 
data.dropna(inplace = True) 
  
# extracting 5 rows 
short_data = data.head().copy() 
  
# calling str.index() method 
try:
    short_data["Index Name"]= short_data["Name"].str.index("a") 
except Exception as err:
    print(err) 
      
# display 
short_data

輸出:
如輸出圖像所示,輸出數據幀沒有索引名稱列,並且打印了錯誤“substring not found”。這是因為str.index()在未找到時返回valueError,因此它必須轉到case並打印錯誤。



相關用法


注:本文由純淨天空篩選整理自Kartikaybhutani大神的英文原創作品 Python | Pandas Series.str.index()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。