def METHOD_NAME(df, columns):
    for column in columns:
        clean_col = df[column]
        dropped = clean_col.dropna(axis=0)
        exact_dtype = type(dropped.iloc[0]) if len(dropped) > 0 else None
        if exact_dtype is str:
            yield column
        else:
            logger.warn(
                f'Attempted to perform string-only action on non-string column \'{column}\''
            )