Australia National Data
August 29, 2025
Let’s talk about the versatility of WiNDCNational.jl. Since WiNDC is based in the United States our, default data is the United States national table. However, there are, apparently, other countries1. Since my primary collaborator is Australian, let’s load the Australian national table.
Step 1 is to find and download the data, and it’s also going to be a
problem. The Australian Bureau of Statistics (ABS) provides the data here.
The data is only available as a xlsb file, which is a
binary Excel format. Unfortunately, this format is not well-supported in
Julia, and we’ll need to convert it to a more usable format like CSV or
Excel. This is a manual process, open the files in Excel, and save as
xlsx.
To load data into a WiNDCContainer we need to write a
YAML file. If you don’t know what YAML is just think of it as a human
readable configuration file. You don’t need to write these from scratch,
I am going to adapt the BEA summary
file for the US national dataset.
The YAML file has four sections:
- metadata
- sets
- parameters
- composite_parameters
We’ll discuss each in turn.
You can download my YAML file here.
Metadata
The first section contains the metadata necessary to load the data. The BEA summary file is configured to download the data from the BEA. We don’t need to do that for Australia as we’ve already downloaded the data.
First, we need to set the years. The format is
Excel sheet: year. The BEA sheets are named for the year,
but Australia is not. You should open the data and inspect it, the
sheets are named with the format 2022-23, we’ll call that
2023. The years section of my file will then
be:
years:
"2022-23": 2023If you want to load more years, just add more years on new lines.
Since we have downloaded our data we can replace the
download sections and replace with paths:
paths:
use:
path: data/5217002.xlsx
supply:
path: data/5217001.xlsx
value_added:
path: data/5217003.xlsxI have my data saved in a data directory, so that is
prepended. You can make these be absolute paths if you want. You have
(hopefully) already noticed that Australia provides three files,
use, supply, and value_added. We
will use these keywords to identify where the actual data comes
from.
Finally, we need to specify how the ABS handles suppressed data. In
the ABS data, suppressed values are indicated with a n.p.
(not published) label. We can tell WiNDC to treat these as missing
values by adding the following to our YAML file:
na_values:
- "n.p."sets
Now we must specify the sets. I recommend copy/pasting the sets section from the BEA summary file and adapting it for the ABS data. The primary things we need update are the values and descriptions ranges.
Let’s look at commodity. The new values are located in
A8:A122, the values correspond to the codes provided by the
ABS. The descriptions are located in B8:B122. The updated
commodity section will look like this:
commodity:
description: "Commodities"
domain: "row"
values : "A8:A122"
descriptions : "B8:B122"
table: "supply"The table field corresponds to the key that we defined
in the paths section from metadata.
One major change from the BEA data is the need to specify
value_added for labor_demand,
capital_demand and output_tax. If you don’t
you’ll get errors about missing data.
There are three sets present in the BEA data by missing in ABS:
duty, subsidy, and
sector_subsidy. These will need to be removed from the YAML
file. We’ll add a few composite_parameters to account for
this missing data.
parameters
There are only two important changes:
- Remove the parameters relating to
duty,subsidyandsector_subsidy. - Change
tabletovalue_addedforlabor_demand,capital_demandandoutput_tax.
The rest of the parameters need no updating.
composite_parameters
We only need to add three parameters:
Sector_Subsidy:
description: "Subsidies by sector"
elements:
- "sector_subsidy"
Subsidy:
description: "Total subsidies"
elements:
- "subsidy"
Duty:
description: "Total duties"
elements:
- "duty"These are expected by WiNDCNational and the values will default to 0.