I have a pandas dataframe that contains a mix of categorical and numeric columns. By default, df.describe() returns only a summary of the numerical data (describing those columns with count, mean, std, min, quantiles, max)
when iterating through all the columns in the df and describing them individually as [df[c].describe() for c in df.columns] the description is returned based off of specific column dtype; i.e. numerical summary for int and float and categoric summary for object
Does any one know of a succinct way of describing all columns as categorical with count, unique, top, freq?
a slightly shorter version of the answer:
df.describe(include = 'object')
following converts all columns to object type then describes them:
df.astype('object').describe()
for cleaner view try:
df.astype('object').describe().transpose()
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With