def _col_type_set(self, col, df):
        """
        Determines the set of types present in a DataFrame column.

        :param str col: A column name.
        :param pandas.DataFrame df: The dataset. Usually ``self._data``.
        :return: A set of Types.
        """
        type_set = set()
        if df[col].dtype == np.dtype(object):
            unindexed_col = list(df[col])
            for i in range(0, len(df[col])):
                if unindexed_col[i] == np.nan:
                    continue
                else:
                    type_set.add(type(unindexed_col[i]))
            return type_set
        else:
            type_set.add(df[col].dtype)
            return type_set
Determines the set of types present in a DataFrame column.

        :param str col: A column name.
        :param pandas.DataFrame df: The dataset. Usually ``self._data``.
        :return: A set of Types.