Code Duplication    Length = 24-24 lines in 2 locations

src/egon/data/datasets/heat_supply/individual_heating.py 2 locations

@@ 1720-1743 (lines=24) @@
1717
    func(mvgd_ids)
1718
1719
1720
def split_mvgds_into_bulks_pypsa_eur_sec(n, max_n, func):
1721
    """"""
1722
1723
    with db.session_scope() as session:
1724
        query = (
1725
            session.query(
1726
                MapZensusGridDistricts.bus_id,
1727
            )
1728
            .filter(
1729
                MapZensusGridDistricts.zensus_population_id
1730
                == EgonPetaHeat.zensus_population_id
1731
            )
1732
            .distinct(MapZensusGridDistricts.bus_id)
1733
        )
1734
    mvgd_ids = pd.read_sql(query.statement, query.session.bind, index_col=None)
1735
1736
    mvgd_ids = mvgd_ids.sort_values("bus_id").reset_index(drop=True)
1737
1738
    mvgd_ids = np.array_split(mvgd_ids["bus_id"].values, max_n)
1739
    # Only take split n
1740
    mvgd_ids = mvgd_ids[n]
1741
1742
    logger.info(f"Bulk takes care of MVGD: {min(mvgd_ids)} - {max(mvgd_ids)}")
1743
    func(mvgd_ids)
1744
1745
1746
def create_peak_load_table():
@@ 1694-1717 (lines=24) @@
1691
    export_min_cap_to_csv(df_hp_min_cap_mv_grid_pypsa_eur_sec)
1692
1693
1694
def split_mvgds_into_bulks_2035(n, max_n, func):
1695
    """"""
1696
1697
    with db.session_scope() as session:
1698
        query = (
1699
            session.query(
1700
                MapZensusGridDistricts.bus_id,
1701
            )
1702
            .filter(
1703
                MapZensusGridDistricts.zensus_population_id
1704
                == EgonPetaHeat.zensus_population_id
1705
            )
1706
            .distinct(MapZensusGridDistricts.bus_id)
1707
        )
1708
    mvgd_ids = pd.read_sql(query.statement, query.session.bind, index_col=None)
1709
1710
    mvgd_ids = mvgd_ids.sort_values("bus_id").reset_index(drop=True)
1711
1712
    mvgd_ids = np.array_split(mvgd_ids["bus_id"].values, max_n)
1713
    # Only take split n
1714
    mvgd_ids = mvgd_ids[n]
1715
1716
    logger.info(f"Bulk takes care of MVGD: {min(mvgd_ids)} - {max(mvgd_ids)}")
1717
    func(mvgd_ids)
1718
1719
1720
def split_mvgds_into_bulks_pypsa_eur_sec(n, max_n, func):