Python Pandas Series.str.isdigit()
Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python软件包的奇妙生态系统。Pandas就是这些包中的一个,它使导入和分析数据变得更加容易。
Pandas str.isdigit()方法用于检查每个系列字符串中的所有字符是否都是数字。空白或任何其他字符出现在字符串中都会返回false。如果数字是小数,那么也会返回false,因为这是一个字符串方法,’.’是一个特殊字符,在字符串中不是小数。
语法: Series.str.isdigit()
返回类型: 布尔系列,空值也可能被包括在内,这取决于调用者的系列。
在下面的例子中,使用的数据框包含一些NBA球员的数据。下面是数据框在任何操作之前的图像。
示例:
在这个例子中,.isdigit()方法被应用于Age列。在进行任何操作之前,使用.dropna( )删除空行以避免错误。
由于Age列被导入为Float dtype,所以首先使用.astype()方法将其转换为字符串。之后,isdigit()被应用两次,首先是在原始序列上,之后使用str.replace()方法删除’.’,以查看删除特殊字符后的输出。
# importing pandas module
import pandas as pd
# making data frame
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv")
# removing null values to avoid errors
data.dropna(inplace = True)
# converting dtype to string
data["Age"]= data["Age"].astype(str)
# removing '.'
data["Age new"]= data["Age"].str.replace(".", "")
# creating bool series with original column
data["bool_series1"]= data["Age"].str.isdigit()
# creating bool series with new column
data["bool_series2"]= data["Age new"].str.isdigit()
# display
data.head(10)
输出:
如输出图片所示,在字符串中出现小数点之前,布尔系列是假的。在删除它之后,新的系列的所有值都是真。