首页 > 解决方案 > 删除一个brightway方法,而不仅仅是注销

问题描述

我希望通过删除多余的 LCIA 方法来简化我的一个项目。

我知道我可以取消注册这样的方法:

Method(('superfluous', 'method', 'tuple')).deregister()

但根据文档字符串,这将“从元数据存储中删除一个对象。不删除任何文件。”

Method对象缺少对象所具有的delete方法Database。有没有删除方法的明智方法?

标签: brightway

解决方案


删除所有默认方法只会节省大约 20 MB,因此通常不值得担心。要删除实际数据,您需要手动删除中间泡菜和处理过的数组。他们的路径是:

import brightway2 as bw
import os
my_method = bw.Method(("some", "method"))
# Intermediate pickle, what gets loaded by my_method.load()
os.path.join(bw.projects.dir, "intermediate", my_method.filename + ".pickle")
# Processed array, used in calculations
my_method.filepath_processed()

推荐阅读