in spotify_confidence/analysis/bayesian/bayesian_base.py [0:0]
def _validate_data(self):
"""Integrity check input dataframe."""
if not self._all_group_columns:
raise ValueError(
"""At least one of `categorical_group_columns`
or `ordinal_group_column` must be specified."""
)
# Ensure there's at most 1 observation per grouping.
max_one_row_per_grouping = all(self._data_frame.groupby(self._all_group_columns).size() <= 1)
if not max_one_row_per_grouping:
raise ValueError("""Each grouping should have at most 1 observation.""")
if self._ordinal_group_column:
ordinal_column_type = self._data_frame[self._ordinal_group_column].dtype.type
if not np.issubdtype(ordinal_column_type, np.number) and not issubclass(
ordinal_column_type, np.datetime64
):
raise TypeError(