Skip to content Skip to sidebar Skip to footer

Checking If A Data Series Is Strings

I want to check if a column in a dataframe contains strings. I would have thought this could be done just by checking dtype, but that isn't the case. A pandas series that contains

Solution 1:

You can use this to see if all elements in a column are strings

df.applymap(type).eq(str).all()

a    False
b     True
c    False
dtype: bool

To just check if any are strings

df.applymap(type).eq(str).any()

Solution 2:

You could map the data with a function that converts all the elements to True or False if they are equal to str-type or not, then just check if the list contains any False elements

The example below tests a list containing element other then str. It will tell you True if data of other type is present

test = [1, 2, '3']
Falseinmap((lambda x: type(x) == str), test)

Output: True

Post a Comment for "Checking If A Data Series Is Strings"