'Convert this data source to pandas dataframe.
If ``column_names`` is set, use those. Otherwise let Pandas
infer the column names. The ``column_names`` property can be
used both to order and filter the columns.
Returns:
DataFrame'

def to_df(self):

    if (not pd):
        raise RuntimeError('Pandas    must    be    installed    to    convert    to    a    Pandas    Dataframe')
    if self.column_names:
        return pd.DataFrame(self.data, columns=self.column_names)
    else:
        return pd.DataFrame(self.data)
