I would like to access to all elementary flows generated by an activity in Brightway in a table that would gather the flows and the amounts.
Let's assume a random activity :
lca=bw.LCA({random_act:2761,method)
lca.lci()
lca.lcia()
lca.inventory
I have tried several ways but none works :
I have tried to export my lci with brightway2-io but some errors appear that i cannot solve :
bw2io.export.excel.lci_matrices_to_excel(db_name)
returns an error when computing the biosphere matrix data for a specific row :--> 120 bm_sheet.write_number(bio_lookup[row] + 1, act_lookup[col] + 1, value) 122 COLUMNS = ( 123 u"Index", 124 u"Name", (...) 128 u"Location", 129 ) 131 tech_sheet = workbook.add_worksheet("technosphere-labels") KeyError: 1757
I try to get manually the amount of a specific elementary flow. For example, let's say I want to compute the total amount of Aluminium needed for the activity. To do so, i try this:
flow_Al=Database("biosphere3").search("Aluminium, in ground")
(I only want the resource Aluminium that is extracted as a ore, from the ground)
amount_Al=0
row = lca.biosphere_dict[flow_Al]
col_indices = lca.biosphere_matrix[row, :].tocoo()
amount_consumers_lca = [lca.inventory[row, index] for index in col_indices.col]
for j in amount_consumers_lca:
amount_Al=amount_Al+j
amount_Al`
This works but the final amount is too low and probably isn't what i'm looking for...
How can I solve this ?
Thank you
This will work on Brightway 2 and 2.5:
The cutoff doesn't make sense for the inventory database, but it can be adapted for the LCIA result (
characterized_inventory
) as well.Once you have a pandas DataFrame you can filter or export easily.