split consumer groups best character

This commit is contained in:
2026-02-02 22:05:56 +01:00
parent f2c659c266
commit bda4d54231
2 changed files with 70 additions and 1 deletions

View File

@@ -174,6 +174,11 @@ def _(data_validated):
return (data,)
@app.cell
def _():
return
@app.cell
def _():
# Check if all business owners are missing a 'Consumer type' in demographics
@@ -404,6 +409,37 @@ def _():
return
@app.cell
def _():
mo.md(r"""
## Character Ranking Points (per customer segment)
""")
return
@app.cell
def _(S, data):
_content = ""
for _consumer_group, _consumer_df in utils.split_consumer_groups(data).items():
_char_rank = S.get_character_ranking(_consumer_df)[0]
_char_rank_weighted = calculate_weighted_ranking_scores(_char_rank)
_plot = S.plot_weighted_ranking_score(
_char_rank_weighted,
title=f'Most Popular Character - Weighted Popularity Score - CONSUMER: "{_consumer_group.replace()}"<br>(1st=3pts, 2nd=2pts, 3rd=1pt)',
x_label='Voice'
)
_content += f"""
{mo.ui.altair_chart(_plot)}
"""
mo.md(_content)
return
@app.cell(hide_code=True)
def _():
mo.md(r"""
@@ -579,7 +615,6 @@ def _(S, voice_1_10):
{mo.ui.altair_chart(_summary)}
""")
return