from pyeconlab import DynamicProductLevelExportSystem

#-Local Imports-#
from dataset_info import TARGET_DATASET_DIR, CHAPTER_RESULTS
DATASET_DIR = TARGET_DATASET_DIR['nber']
RESULTS_DIR = CHAPTER_RESULTS["G"]

data = pd.read_hdf(DATASET_DIR + "nber-export-sitcr2l4-1962to2000.h5", "D")
data = data.rename(columns={
    'eiso3c': 'country',
    'sitc4': 'productcode',
    'value': 'export'
})
data = data.set_index(["year"])
system = DynamicProductLevelExportSystem()
system.from_df(data)

#-Year 2000-#
ys = system[2000]
ys.rca_matrix(complete_data=True)
ys.mcp_matrix()
ys.compute_pci()
ys.auto_adjust_pci_sign()
pci = ys.pci.copy()

#-Example Proximity Values-#
from pyeconlab.trade.classification import SITCR2
sitc_to_name = SITCR2().code_description_dict()
prox1 = ys.proximity_matrix()
products1 = ["8423", "0711"]

# ----------------#
# -Setup a System-#
# ----------------#

# -Export Data-#
for year in xrange(1995, 2013 + 1, 1):
    df = pd.read_stata(SOURCE_DIR + "baci-sitcr3-export-%s.dta" % (year))
    df = df.rename(columns={"eiso3c": "country", "sitcr3": "productcode", "value": "export"})
    df = df.set_index(["year"])
    if year == 1995:
        data = df
    else:
        data = data.append(df)
s = DynamicProductLevelExportSystem()
s.from_df(data)

# -2013 Cross Section-#
xs = s[2000]
xs.rca_matrix(complete_data=True)
xs.mcp_matrix()
xs.proximity_matrix()
xs.compute_pci()
xs.auto_adjust_pci_sign(product_datum=("33400", "-ve"))  # -Oil is negative, un-complex-#

prox = xs.proximity
pci = xs.pci.to_dict()

# -Parts and Components Product Code Sets-#
allcodes = set(prox.index)
import pandas as pd
import numpy as np 
import matplotlib.pyplot as plt

from pyeconlab import DynamicProductLevelExportSystem

#-Local Imports-#
from dataset_info import TARGET_DATASET_DIR, CHAPTER_RESULTS
DATASET_DIR = TARGET_DATASET_DIR['nber']
RESULTS_DIR = CHAPTER_RESULTS["G"]

data = pd.read_hdf(DATASET_DIR+"nber-export-sitcr2l4-1962to2000.h5", "D")
data = data.rename(columns={'eiso3c' : 'country', 'sitc4' : 'productcode', 'value' : 'export'})
data = data.set_index(["year"])
system = DynamicProductLevelExportSystem()
system.from_df(data)

#-Year 2000-#
ys = system[2000]
ys.rca_matrix(complete_data=True)
ys.mcp_matrix()
ys.compute_pci()
ys.auto_adjust_pci_sign()
pci = ys.pci.copy()

#-Example Proximity Values-#
from pyeconlab.trade.classification import SITCR2
sitc_to_name = SITCR2().code_description_dict()
prox1 = ys.proximity_matrix()
products1 = ["8423", "0711"]