Ref: https://github.com/pandas-dev/pandas/pull/49742#discussion_r1025765668

Within the groupby code, when the Cython portion of _cython_agg_general encounters a NotImplementedError, it falls back to _agg_py_fallback. The method _cython_transform currently has no such fallback, and so trying to use e.g. cummin on string columns fails. I think we should instead provide a Python fallback.