Convert All Non-numeric Columns to Category Data Types
Python
Converts all object data types in a dataframe to category data types. Useful for when training models such as Catboost where categorical fields need to be provided as category data types.
1| from pandas.api.types import is_numeric_dtype 2| def convert_cats(df): 3| cats = [] 4| for col in df.columns: 5| if is_numeric_dtype(df[col]): 6| pass 7| else: 8| cats.append(col) 9| for col in cats: 10| df[col] = df[col].astype('category') 11| convert_cats(X)
149
132
127
119