Para el cálculo del número de elementos únicos existentes en cada columna de un dataframe df vamos a utilizar una función anónima con lambda en la que se aplique la función de pandas "nunique". Ésta, aplicada a una serie pandas, devuelve el resultado que nos interesa:
df.apply(lambda x: x.nunique())
Categoría