📜  Python| Pandas Series.str.endswith()

📅  最后修改于: 2022-05-13 01:55:37.569000             🧑  作者: Mango

Python| Pandas Series.str.endswith()

Python是一种用于进行数据分析的出色语言,主要是因为以数据为中心的Python包的奇妙生态系统。 Pandas 就是其中之一,它使导入和分析数据变得更加容易。

Pandas endswith()是另一种在系列或数据框中搜索和过滤文本数据的方法。该方法类似于 Python 的 endswith() 方法,但具有不同的参数,并且仅适用于 Pandas 对象。因此.str必须在每次调用此方法之前加上前缀,以便编译器知道它与 default 函数不同。

要下载代码中使用的 CSV,请单击此处。

在以下示例中,使用的数据框包含一些 NBA 球员的数据。下面附上任何操作之前的数据帧图像。

示例 #1:返回 Bool 系列
在此示例中,使用str.endswith()函数检查大学列是否元素在字符串末尾具有“e”。返回一个布尔系列,该系列在字符串有“e”的索引位置为真。 str.lower()方法在 endswith() 之前被调用,因为数据可以在任何情况下。

# 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")
  
# String to be searched in end of string 
search ="e"
  
# boolean series returned with False at place of NaN
bool_series = data["College"].str.lower().str.endswith(search)
  
# displaying boolean series
bool_series

输出:
如输出图像所示,bool 系列在 College 列最后具有“e”的索引位置具有 True。也可以通过查看原始数据帧的图像进行比较。


示例 #2:处理 NULL 值

数据分析中最重要的部分是处理 Null 值。从上面的输出图像中可以看出,无论 College 列中的值为空还是 NaN,布尔系列都具有 NaN。如果将此布尔系列传递到数据框中,则会出错。因此,需要使用na参数处理 NaN 值。它也可以设置为字符串,但由于布尔系列用于传递和返回各自的值,所以它应该只设置为布尔值。
在此示例中, na参数设置为 False。因此,无论 College 列具有 Null 值,Bool 系列将存储 False 而不是 NaN。之后,该系列再次传递给数据框以仅显示 True 值。

# 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")
  
# String to be searched in end of string 
search ="e"
  
# boolean series returned with False at place of NaN
bool_series = data["College"].str.lower().str.endswith(search, na = False)
  
# displaying filtered dataframe
data[bool_series]

输出:
如输出图像所示,数据框在 College 列的字符串末尾具有“e”的行。由于 na 参数设置为 False,因此不显示 NaN 值。