From d53487f822e717e5bbe3a1e7d93527e84df70176 Mon Sep 17 00:00:00 2001 From: Fabian Date: Fri, 8 Apr 2022 14:23:33 +0200 Subject: [PATCH 1/2] build_powerplants: fix duplicated names per bus --- scripts/build_powerplants.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scripts/build_powerplants.py b/scripts/build_powerplants.py index 00b1a9a3..cc01d373 100755 --- a/scripts/build_powerplants.py +++ b/scripts/build_powerplants.py @@ -118,7 +118,7 @@ if __name__ == "__main__": # Correct bioenergy for countries where possible opsd = pm.data.OPSD_VRE().powerplant.convert_country_to_alpha2() opsd = opsd.query('Country in @countries and Fueltype == "Bioenergy"') - opsd['Fueltype'] = 'biomass' + opsd['Name'] = "Biomass" available_countries = opsd.Country.unique() ppl = ppl.query('not (Country in @available_countries and Fueltype == "Bioenergy")') ppl = pd.concat([ppl, opsd]) @@ -148,4 +148,8 @@ if __name__ == "__main__": if bus_null_b.any(): logging.warning(f"Couldn't find close bus for {bus_null_b.sum()} powerplants") + # TODO: This has to fixed in PPM, some powerplants are still duplicated + cumcount = ppl.groupby(['bus', 'Fueltype']).cumcount() + 1 + ppl.Name = ppl.Name.where(cumcount == 1, ppl.Name + " " + cumcount.astype(str)) + ppl.to_csv(snakemake.output[0]) From 65790cd065f32934739a51248bcaf74ba0bdb760 Mon Sep 17 00:00:00 2001 From: Fabian Date: Fri, 8 Apr 2022 14:34:52 +0200 Subject: [PATCH 2/2] build_powerplants: remove non-assigned ppls --- scripts/build_powerplants.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/build_powerplants.py b/scripts/build_powerplants.py index cc01d373..74f53d80 100755 --- a/scripts/build_powerplants.py +++ b/scripts/build_powerplants.py @@ -146,7 +146,9 @@ if __name__ == "__main__": bus_null_b = ppl["bus"].isnull() if bus_null_b.any(): - logging.warning(f"Couldn't find close bus for {bus_null_b.sum()} powerplants") + logging.warning(f"Couldn't find close bus for {bus_null_b.sum()} powerplants. " + "Removing them from the powerplants list.") + ppl = ppl[~bus_null_b] # TODO: This has to fixed in PPM, some powerplants are still duplicated cumcount = ppl.groupby(['bus', 'Fueltype']).cumcount() + 1