Thanks perfringo.
I have tried == but I get this error:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-11-e749837193f3> in <module>()
3 col_type = df[col].dtype
4
----> 5 if col_type == category:
6 df[col] = df[col].astype('object')
7
NameError: name 'category' is not defined
I have tried your approach with category dtypes but am getting this error:
df.select_dtypes(include='category')
df.select_dtypes(include='category').columns
dict.fromkeys(df.select_dtypes(include='category').columns, 'object')
df.astype(dict.fromkeys(df.select_dtypes(include='category').columns, 'object'))
df.dtypes
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-13-d704a5f02358> in <module>()
----> 1 df.select_dtypes(include='category')
2 df.select_dtypes(include='category').columns
3 dict.fromkeys(df.select_dtypes(include='category').columns, 'object')
4
5 df.astype(dict.fromkeys(df.select_dtypes(include='category').columns, 'object'))
C:\Program Files\Anaconda3\lib\site-packages\pandas\core\frame.py in select_dtypes(self, include, exclude)
2257 include, exclude = include or (), exclude or ()
2258 if not (is_list_like(include) and is_list_like(exclude)):
-> 2259 raise TypeError('include and exclude must both be non-string'
2260 ' sequences')
2261 selection = tuple(map(frozenset, (include, exclude)))
TypeError: include and exclude must both be non-string sequences