Load data table, taking subset if needed

        Parameters
        ----------
        metadata_path : str
            Path to metadata file
        data_path : str
            Path to data file, absolute or relative to metadata file

        Returns
        -------
        dataframe
            Table for analysis

def _load_table(self, metadata_path, data_path):
        """
        Load data table, taking subset if needed

        Parameters
        ----------
        metadata_path : str
            Path to metadata file
        data_path : str
            Path to data file, absolute or relative to metadata file

        Returns
        -------
        dataframe
            Table for analysis

        """

        metadata_dir = os.path.dirname(os.path.expanduser(metadata_path))
        data_path = os.path.normpath(os.path.join(metadata_dir, data_path))

        extension = data_path.split('.')[-1]

        if extension == 'csv':
            full_table = pd.read_csv(data_path, index_col=False)
            table = _subset_table(full_table, self.subset)
            self.meta, _ = _subset_meta(self.meta, self.subset)
        elif extension in ['db', 'sql']:

            # TODO: deal with incrementing in DB table
            table = self._get_db_table(data_path, extension)
        else:
            raise TypeError('Cannot process file of type %s' % extension)

        return table