Как найти новых поставщиков техносферы и изменить ее местоположение в Brightway2
Я хочу создать новый набор данных по производству меди в 'CH' на основе текущего набора данных 'производство меди в AU'. Я пытался применить следующие функции, но последняя функция вернула "Не удается найти это местоположение". Кто-нибудь может помочь? Заранее спасибо!
data = w.extract_brightway2_databases(["ecoinvent 3.4 cutoff"])
copper_production = w.contains("name", "copper production")
musuizi=w.get_one(data,w.equals('location','AU'),copper_production)
musuizi2=w.transformations.geo.copy_to_new_location(musuizi, 'CH')
w.transformations.geo.relink_technosphere_exchanges(musuizi2,data,exclusive=True, drop_invalid=False, biggest_first=False, contained=False)
1 ответ
(Примечание: на самом деле этот вопрос касается библиотеки Wurst, а не Brightway)
Похоже, что есть некоторые ошибки из-за проблем синхронизации между базой данных ecoinvent и географическими определениями. В настоящее время вы можете сделать следующее:
import wurst as w
data = w.extract_brightway2_databases(["ecoinvent 3.4 cutoff"])
mapping = {
"ASCC": "US-ASCC",
"CSG": "CN-CSG",
"FRCC": "US-FRCC",
"HICC": "US-HICC",
"IAI Area, Africa": 'IAI Area 1, Africa',
"IAI Area, Asia, without China and GCC": 'IAI Area 4&5, without China',
"IAI Area, Gulf Cooperation Council": 'IAI Area 8, Gulf',
"IAI Area, North America, without Quebec": 'IAI Area 2, without Quebec',
"IAI Area, Russia & RER w/o EU27 & EFTA": 'IAI Area, Europe outside EU & EFTA',
"IAI Area, South America": 'IAI Area 3, South America',
"MRO, US only": "US-MRO",
"NPCC, US only": "US-NPCC",
"RFC": "US-RFC",
"SERC": "US-SERC",
"SGCC": "CN-SGCC",
"SPP": "US-SPP",
"TRE": "US-TRE",
"WECC, US only": "US-WECC",
}
def update_all_locations(data):
for ds in data:
ds['location'] = mapping.get(ds['location'], ds['location'])
update_all_locations(data)
copper_in_au = w.get_one(data, w.equals('location','AU'), w.contains("name", "copper production"))
copper_in_ch = w.transformations.geo.copy_to_new_location(copper_in_au, 'CH')
data.append(copper_in_ch)
w.transformations.geo.relink_technosphere_exchanges(
copper_in_ch,
data,
contained=False
)