in src/mozanalysis/frequentist_stats/sample_size.py [0:0]
def dataframe(self) -> pd.DataFrame:
"""dataframe property
returns results consolidated into a dataframe"""
formatted_results = {}
for m, r in self.data.items():
metric_result = {}
for k, v in r.items():
if isinstance(v, dict):
for vk, vv in v.items():
if vk == "period_start_day":
vk = "period"
metric_result[f"{k}_{vk}"] = vv
else:
metric_result[k] = v
formatted_results[m] = metric_result
df = pd.DataFrame.from_dict(formatted_results, orient="index")
return df[
[
"relative_effect_size",
"effect_size_value",
"mean_value",
"std_dev_value",
"sample_size_per_branch",
"population_percent_per_branch",
"effect_size_period",
"mean_period",
"std_dev_period",
]
]