@@ -31,21 +31,21 @@ def read_inputs(data_dir):
3131
3232def read_commodities_csv (buffer_ , con ):
3333 sql = """CREATE TABLE commodities (
34- name VARCHAR PRIMARY KEY,
34+ id VARCHAR PRIMARY KEY,
3535 type VARCHAR CHECK (type IN ('energy', 'service', 'material', 'environmental')),
3636 unit VARCHAR,
3737 );
3838 """
3939 con .sql (sql )
4040 rel = con .read_csv (buffer_ , header = True , delimiter = "," ) # noqa: F841
41- con .sql ("INSERT INTO commodities SELECT name , type, unit FROM rel;" )
42- return con .sql ("select name, type, unit from commodities" ).fetchnumpy ()
41+ con .sql ("INSERT INTO commodities SELECT id , type, unit FROM rel;" )
42+ return con .sql ("select * from commodities" ).fetchnumpy ()
4343
4444
4545def read_commodity_trade_csv (buffer_ , con ):
4646 sql = """CREATE TABLE commodity_trade (
47- commodity VARCHAR REFERENCES commodities(name ),
48- region VARCHAR REFERENCES regions(name ),
47+ commodity VARCHAR REFERENCES commodities(id ),
48+ region VARCHAR REFERENCES regions(id ),
4949 year BIGINT,
5050 import DOUBLE,
5151 export DOUBLE,
@@ -54,68 +54,68 @@ def read_commodity_trade_csv(buffer_, con):
5454 con .sql (sql )
5555 rel = con .read_csv (buffer_ , header = True , delimiter = "," ) # noqa: F841
5656 con .sql ("""INSERT INTO commodity_trade SELECT
57- commodity, region , year, import, export FROM rel;""" )
57+ commodity_id, region_id , year, import, export FROM rel;""" )
5858 return con .sql ("SELECT * from commodity_trade" ).fetchnumpy ()
5959
6060
6161def read_commodity_costs_csv (buffer_ , con ):
6262 sql = """CREATE TABLE commodity_costs (
63+ commodity VARCHAR REFERENCES commodities(id),
64+ region VARCHAR REFERENCES regions(id),
6365 year BIGINT,
64- region VARCHAR REFERENCES regions(name),
65- commodity VARCHAR REFERENCES commodities(name),
6666 value DOUBLE,
6767 );
6868 """
6969 con .sql (sql )
7070 rel = con .read_csv (buffer_ , header = True , delimiter = "," ) # noqa: F841
7171 con .sql ("""INSERT INTO commodity_costs SELECT
72- year, region, commodity_name , value FROM rel;""" )
72+ commidity_id, region_id, year , value FROM rel;""" )
7373 return con .sql ("SELECT * from commodity_costs" ).fetchnumpy ()
7474
7575
7676def read_demand_csv (buffer_ , con ):
7777 sql = """CREATE TABLE demand (
78+ commodity VARCHAR REFERENCES commodities(id),
79+ region VARCHAR REFERENCES regions(id),
7880 year BIGINT,
79- commodity VARCHAR REFERENCES commodities(name),
80- region VARCHAR REFERENCES regions(name),
8181 demand DOUBLE,
8282 );
8383 """
8484 con .sql (sql )
8585 rel = con .read_csv (buffer_ , header = True , delimiter = "," ) # noqa: F841
86- con .sql ("INSERT INTO demand SELECT year, commodity_name, region , demand FROM rel;" )
86+ con .sql ("INSERT INTO demand SELECT commodity_id, region_id, year , demand FROM rel;" )
8787 return con .sql ("SELECT * from demand" ).fetchnumpy ()
8888
8989
9090def read_demand_slicing_csv (buffer_ , con ):
9191 sql = """CREATE TABLE demand_slicing (
92- commodity VARCHAR REFERENCES commodities(name),
93- region VARCHAR REFERENCES regions(name),
92+ commodity VARCHAR REFERENCES commodities(id),
93+ region VARCHAR REFERENCES regions(id),
94+ year BIGINT,
9495 timeslice VARCHAR,
9596 fraction DOUBLE CHECK (fraction >= 0 AND fraction <= 1),
96- year BIGINT,
9797 );
9898 """
9999 con .sql (sql )
100100 rel = con .read_csv (buffer_ , header = True , delimiter = "," ) # noqa: F841
101101 con .sql ("""INSERT INTO demand_slicing SELECT
102- commodity, region, timeslice, fraction, year FROM rel;""" )
102+ commodity_id, region_id, year, timeslice, fraction FROM rel;""" )
103103 return con .sql ("SELECT * from demand_slicing" ).fetchnumpy ()
104104
105105
106106def read_regions_csv (buffer_ , con ):
107107 sql = """CREATE TABLE regions (
108- name VARCHAR PRIMARY KEY,
108+ id VARCHAR PRIMARY KEY,
109109 );
110110 """
111111 con .sql (sql )
112112 rel = con .read_csv (buffer_ , header = True , delimiter = "," ) # noqa: F841
113- con .sql ("INSERT INTO regions SELECT name FROM rel;" )
114- return con .sql ("SELECT name from regions" ).fetchnumpy ()
113+ con .sql ("INSERT INTO regions SELECT id FROM rel;" )
114+ return con .sql ("SELECT * from regions" ).fetchnumpy ()
115115
116116
117117def calculate_global_commodities (commodities ):
118- names = commodities ["name " ].astype (np .dtype ("str" ))
118+ names = commodities ["id " ].astype (np .dtype ("str" ))
119119 types = commodities ["type" ].astype (np .dtype ("str" ))
120120 units = commodities ["unit" ].astype (np .dtype ("str" ))
121121
0 commit comments