import pandas as pd

# Cesty k souborům
cesta_bp = r"C:\Škola\BAK\AnalytickaCast\Kamdojizdime\PripavaDat\4.PrevodDatStejnaStruktura\4.KamDojizdimeKomplet.xlsx"
cesta_vodafone = r"C:\Škola\BAK\AnalytickaCast\Kamdojizdime\PripavaDat\4.PrevodDatStejnaStruktura\4.VodafoneDataLongFormat.xlsx"

# Načtení dat
bp = pd.read_excel(cesta_bp)
vodafone = pd.read_excel(cesta_vodafone)

# Sladění typů a názvů
bp["Kod_obec"] = bp["Kod_obec"].astype(str).str.strip()
vodafone["Kod_obec"] = vodafone["Kod_obec"].astype(str).str.strip()

# Spojení podle obec + den + čas
spojene = pd.merge(
    bp,
    vodafone,
    on=["Kod_obec", "Den v týdnu", "Časový interval"],
    suffixes=("_BP", "_Vodafone"),
    how="inner"
)

# Výpočty rozdílů a podílů
kategorie = [
    ("Rezidenti", "Rezidenti"),
    ("Dojíždějící", "Dojíždějící"),
    ("Navstevnici_celkem", "Návštěvníci"),
    ("Celkový počet přítomných osob", "Celkový počet osob")
]

for bp_nazev, vodafone_nazev in kategorie:
    # Určení správného názvu sloupce v BP datech
    if bp_nazev in spojene.columns:
        sloupec_bp = bp_nazev
    else:
        sloupec_bp = f"{bp_nazev}_BP"

    # Určení správného názvu sloupce ve Vodafone datech
    if f"{vodafone_nazev}_Vodafone" in spojene.columns:
        sloupec_vodafone = f"{vodafone_nazev}_Vodafone"
    else:
        sloupec_vodafone = vodafone_nazev

    # Převod na čísla
    spojene[sloupec_bp] = pd.to_numeric(spojene[sloupec_bp], errors="coerce")
    spojene[sloupec_vodafone] = pd.to_numeric(spojene[sloupec_vodafone], errors="coerce")

    # ➡Výpočet rozdílu
    spojene[f"Rozdíl_{bp_nazev}"] = spojene[sloupec_bp] - spojene[sloupec_vodafone]

    # ➡Výpočet podílu: Vodafone (BP) / všichni operátoři (FD3)
    spojene[f"Podíl_{bp_nazev}"] = spojene[sloupec_bp] / spojene[sloupec_vodafone].replace(0, pd.NA)

# Uložení výstupu
output_path = r"C:\Škola\BAK\AnalytickaCast\Kamdojizdime\PripavaDat\4.PrevodDatStejnaStruktura\4.Porovnani_BP_Vodafone.xlsx"
spojene.to_excel(output_path, index=False)

print("Hotovo! Výsledek uložen jako 4.Porovnani_BP_Vodafone.xlsx")

# skript byl optimalizován pomocí nástroje ChatGPT 4.0
