@classmethod
def from_records(cls, connection, data, casout=None, **kwargs):
    """
        Create a CASTable from records

        Parameters
        ----------
        connection : :class:`CAS`
            The :class:`CAS` connection to read the data into.
        data : :func:`numpy.ndarray`, list-of-tuples, dict, or :class:`pandas.DataFrame`
            The data to upload.
        casout : string or :class:`CASTable`, optional
            The output table specification.  This includes the following parameters.
                name : string, optional
                    Name of the output CAS table.
                caslib : string, optional
                    CASLib for the output CAS table.
                label : string, optional
                    The label to apply to the output CAS table.
                promote : boolean, optional
                    If True, the output CAS table will be visible in all sessions.
                replace : boolean, optional
                    If True, the output CAS table will replace any existing CAS.
                    table with the same name.
        **kwargs : keyword arguments
            Keyword arguments sent to :meth:`pandas.DataFrame.from_records`.

        See Also
        --------
        :meth:`pandas.DataFrame.from_records`

        Returns
        -------
        :class:`CASTable`

        """
    return cls._from_any('records', connection, data, casout=casout, **kwargs)
