def process_ni_data(
    pub_table,
    lookup,
    year=2019,
    geo_type="nuts 2013 level 2",
    geo_cd="UKN0",
    geo_nm="Northern Ireland",
):
    """Process NI data into the same format as nomis_BRES_2019_TYPE450.csv

    Args:
        pub_table (dataframe): number of employees for each SIC4 code in Northern Ireland
        lookup (dict): keys = SIC4 code, values = cluster_name
        geo_type (str): nuts year and level
        geo_cd (str): geographical code
        geo_nm (str): geographical name

    Returns:
        (dataframe): dataframe in the same format as nomis_BRES_2019_TYPE450.csv
    """
    pub_table = (
        pub_table.loc[:, ["SIC 2007", "Total"]]
        .dropna()
        .drop(pub_table[pub_table["SIC 2007"] == "Total"].index)
        .astype({"SIC 2007": "int64"})
        .replace("*", 0)
        .rename(columns={"SIC 2007": "SIC4", "Total": "value"})
        .assign(year=year, geo_type=geo_type, geo_cd=geo_cd, geo_nm=geo_nm)
    )
    pub_table["cluster_name"] = pub_table["SIC4"].map(lookup)
    return pub_table