def get_io_harmonizer(iogen): env_blacklist = sqlhelper.set_repr(config.env_sector_blacklist) sel = matrixutils.generate_selector_matrix( "%s.sector_map" % config.WIOD_SCHEMA, iogen.get_sectors(), "io_code", "env_code", ["io_code is not null", "env_code is not null", "env_code not in %s" % env_blacklist]) return sel
iogen.set_table("%s.ixi_%d" % (config.SCHEMA, year)) exchange_rate = wiod.common.get_exchange_rate("CAN", year) if exchange_rate is None: exchange_rate = exrate.get_rate("ca", year) iogen.set_exchange_rate(exchange_rate) envgen = cfgen.get_envgen() envgen.set_universal_conditions([ "year = %d" % year, "industry not in %s" % sqlhelper.set_repr(config.env_blacklist), ]) io_harmonizer = matrixutils.generate_selector_matrix( "%s.sector_map" % config.SCHEMA, iogen.get_sectors(), "io_code", "harmonized", ["io_code is not null"]) env_harmonizer = matrixutils.generate_selector_matrix( "%s.sector_map" % config.SCHEMA, envgen.get_sectors(), "env_code", "harmonized", ["env_code is not null"]) series = ["1"] cfgen.prepare(year, series, io_harmonizer, env_harmonizer) sector_titles = {} stmt = db.prepare("select distinct code, description" + " from %s.ind_codes order by code" % config.SCHEMA) for row in stmt(): sector_titles[row[0]] = row[1]
iogen.set_pce_col(config.pce_sector[year]) iogen.set_export_col(config.export_sector[year]) exchange_rate = wiod.common.get_exchange_rate("JPN", year) if exchange_rate is None: exchange_rate = 1 / exrate.get_rate("jp", year) # tons co2 / (M jpy * exchange rate) = tons co2 / M usd # GJ / (M jpy * exchange rate) = GJ / M usd # exchange_rate * 1000 gives us kilotons and terrajoules iogen.set_exchange_rate(exchange_rate * 1000) envgen = cfgen.get_envgen() envgen.set_table("%s.env_%d" % (config.SCHEMA, year)) env_harmonizer = matrixutils.generate_selector_matrix( "%s.env_map_%d" % (config.SCHEMA, year), envgen.get_sectors(), "env_sector", "harmonized") io_harmonizer = matrixutils.generate_selector_matrix( "%s.io_map_%d" % (config.SCHEMA, year), iogen.get_sectors(), "io_sector", "harmonized") series = config.env_series[series_code][year] cfgen.prepare(year, series, io_harmonizer, env_harmonizer) cfgen.set_sector_titles(sector_titles) cfgen.describe() cfgen.describe(True) cfgen.counterfact(1995, "jp")
iogen.set_table("%s.ixi_%d" % (config.SCHEMA, year)) exchange_rate = wiod.common.get_exchange_rate("CAN", year) if exchange_rate is None: exchange_rate = exrate.get_rate("ca", year) iogen.set_exchange_rate(exchange_rate) envgen = cfgen.get_envgen() envgen.set_universal_conditions([ "year = %d" % year, "industry not in %s" % sqlhelper.set_repr(config.env_blacklist), ]) io_harmonizer = matrixutils.generate_selector_matrix( "%s.sector_map" % config.SCHEMA, iogen.get_sectors(), "io_code", "harmonized", ["io_code is not null"]) env_harmonizer = matrixutils.generate_selector_matrix( "%s.sector_map" % config.SCHEMA, envgen.get_sectors(), "env_code", "harmonized", ["env_code is not null"]) series = ["1"] cfgen.prepare(year, series, io_harmonizer, env_harmonizer) sector_titles = {} stmt = db.prepare("select distinct code, description" + " from %s.ind_codes order by code" % config.SCHEMA) for row in stmt():
iogen.set_export_col(config.export_sector[year]) exchange_rate = wiod.common.get_exchange_rate("JPN", year) if exchange_rate is None: exchange_rate = 1 / exrate.get_rate("jp", year) # tons co2 / (M jpy * exchange rate) = tons co2 / M usd # GJ / (M jpy * exchange rate) = GJ / M usd # exchange_rate * 1000 gives us kilotons and terrajoules iogen.set_exchange_rate(exchange_rate * 1000) envgen = cfgen.get_envgen() envgen.set_table("%s.env_%d" % (config.SCHEMA, year)) env_harmonizer = matrixutils.generate_selector_matrix( "%s.env_map_%d" % (config.SCHEMA, year), envgen.get_sectors(), "env_sector", "harmonized") io_harmonizer = matrixutils.generate_selector_matrix( "%s.io_map_%d" % (config.SCHEMA, year), iogen.get_sectors(), "io_sector", "harmonized") series = config.env_series[series_code][year] cfgen.prepare(year, series, io_harmonizer, env_harmonizer) cfgen.set_sector_titles(sector_titles) cfgen.describe() cfgen.describe(True) cfgen.counterfact(1995, "jp")
iogen.set_harmonized_rows(config.io_harmonized_sectors[year]) exchange_rate = wiod.common.get_exchange_rate("TWN", year) # tons / (million ntd * exchange_rate) = tons / M usd iogen.set_exchange_rate(exchange_rate) iogen.set_pce_col(config.pce_sector[year]) iogen.set_export_col(config.export_sector[year]) envtable = "%s.env_%d" % (config.SCHEMA, year) envgen = cfgen.get_envgen() envgen.set_table(envtable) env_blacklist = sqlhelper.set_repr(config.env_blacklist[year]) env_condition = "sector NOT IN " + env_blacklist envgen.set_universal_conditions([env_condition]) map_table = "%s.sector_map_%d" % (config.SCHEMA, year) env_harmonizer = matrixutils.generate_selector_matrix( map_table, envgen.get_sectors(), "env_sector", "harmonized_env") io_harmonizer = matrixutils.generate_selector_matrix( map_table, iogen.get_sectors(), "io_sector", "harmonized_env") series = config.env_series_for_code(series_code, year) cfgen.prepare(year, series, io_harmonizer, env_harmonizer) cfgen.describe() cfgen.describe(True) cfgen.counterfact(1999, "tw")