pandas.Series.str.isalnum¶
-
Series.str.
isalnum
(self)[source]¶ Check whether all characters in each string are alphanumeric.
This is equivalent to running the Python string method
str.isalnum()
for each element of the Series/Index. If a string has zero characters,False
is returned for that check.Returns: - Series or Index of bool
Series or Index of boolean values with the same length as the original Series/Index.
See also
Series.str.isalpha
- Check whether all characters are alphabetic.
Series.str.isnumeric
- Check whether all characters are numeric.
Series.str.isalnum
- Check whether all characters are alphanumeric.
Series.str.isdigit
- Check whether all characters are digits.
Series.str.isdecimal
- Check whether all characters are decimal.
Series.str.isspace
- Check whether all characters are whitespace.
Series.str.islower
- Check whether all characters are lowercase.
Series.str.isupper
- Check whether all characters are uppercase.
Series.str.istitle
- Check whether all characters are titlecase.
Examples
Checks for Alphabetic and Numeric Characters
>>> s1 = pd.Series(['one', 'one1', '1', ''])
>>> s1.str.isalpha() 0 True 1 False 2 False 3 False dtype: bool
>>> s1.str.isnumeric() 0 False 1 False 2 True 3 False dtype: bool
>>> s1.str.isalnum() 0 True 1 True 2 True 3 False dtype: bool
Note that checks against characters mixed with any additional punctuation or whitespace will evaluate to false for an alphanumeric check.
>>> s2 = pd.Series(['A B', '1.5', '3,000']) >>> s2.str.isalnum() 0 False 1 False 2 False dtype: bool
More Detailed Checks for Numeric Characters
There are several different but overlapping sets of numeric characters that can be checked for.
>>> s3 = pd.Series(['23', '³', '⅕', ''])
The
s3.str.isdecimal
method checks for characters used to form numbers in base 10.>>> s3.str.isdecimal() 0 True 1 False 2 False 3 False dtype: bool
The
s.str.isdigit
method is the same ass3.str.isdecimal
but also includes special digits, like superscripted and subscripted digits in unicode.>>> s3.str.isdigit() 0 True 1 True 2 False 3 False dtype: bool
The
s.str.isnumeric
method is the same ass3.str.isdigit
but also includes other characters that can represent quantities such as unicode fractions.>>> s3.str.isnumeric() 0 True 1 True 2 True 3 False dtype: bool
Checks for Whitespace
>>> s4 = pd.Series([' ', '\t\r\n ', '']) >>> s4.str.isspace() 0 True 1 True 2 False dtype: bool
Checks for Character Case
>>> s5 = pd.Series(['leopard', 'Golden Eagle', 'SNAKE', ''])
>>> s5.str.islower() 0 True 1 False 2 False 3 False dtype: bool
>>> s5.str.isupper() 0 False 1 False 2 True 3 False dtype: bool
The
s5.str.istitle
method checks for whether all words are in title case (whether only the first letter of each word is capitalized). Words are assumed to be as any sequence of non-numeric characters separated by whitespace characters.>>> s5.str.istitle() 0 False 1 True 2 False 3 False dtype: bool