This commit is contained in:
2023-03-13 19:47:25 +08:00
parent 2f162b970b
commit 09b59d8778
10 changed files with 113 additions and 210 deletions

View File

@@ -16,10 +16,10 @@ n_iter = 10
# 2: ['1.1.3']
# }
dct_list_init_remove_firm_prod = {
140: ['1.4.5.1'],
135: ['1.3.2.1'],
133: ['1.4.4.1'],
2: ['1.1.3']
'140': ['1.4.5.1'],
'135': ['1.3.2.1'],
'133': ['1.4.4.1'],
'2': ['1.1.3']
}
n_max_trial = 5
dct_sample_para = {
@@ -56,13 +56,14 @@ class Model(ap.Model):
# init graph firm
Firm = pd.read_csv("Firm_amended.csv")
Firm['Code'] = Firm['Code'].astype('string')
Firm.fillna(0, inplace=True)
Firm_attr = Firm.loc[:, ["Code", "Name", "Type_Region", "Revenue_Log"]]
firm_product = []
for _, row in Firm.loc[:, '1':].iterrows():
firm_product.append(row[row == 1].index.to_list())
Firm_attr.loc[:, 'Product_Code'] = firm_product
Firm_attr.set_index('Code')
Firm_attr.set_index('Code', inplace=True)
G_Firm = nx.MultiDiGraph()
G_Firm.add_nodes_from(Firm["Code"])
@@ -78,7 +79,7 @@ class Model(ap.Model):
# print(product_code)
for succ_product_code in list(G_bom.successors(product_code)):
# print(succ_product_code)
list_succ_firms = Firm.index[Firm[succ_product_code] ==
list_succ_firms = Firm['Code'][Firm[succ_product_code] ==
1].to_list()
list_revenue_log = [
G_Firm.nodes[succ_firm]['Revenue_Log']
@@ -132,7 +133,7 @@ class Model(ap.Model):
for ag_node, attr in self.firm_network.graph.nodes(data=True):
firm_agent = FirmAgent(
self,
code=attr['Code'],
code=ag_node.label,
name=attr['Name'],
type_region=attr['Type_Region'],
revenue_log=attr['Revenue_Log'],
@@ -352,5 +353,5 @@ class Model(ap.Model):
plt.savefig("network.png")
model = Model(dct_sample_para)
model.run()
# model = Model(dct_sample_para)
# model.run()