Full text
Western University SoVI Algorithm and MATLAB®Implementation Manual: Analysis Using Canada Census 2016 Data Dr. Nova Roosmawati [email protected] Dr. Katsuichiro Goda [email protected] 2025
Contents Listings 6 1 Introduction 8 2 Methodology 9 2.1 Input Data and SoVI Variables ........................ 9 2.2 Construction of SoVI for Canada ....................... 12 2.3 Overview of Interpretation of SoVI Results .................. 16 3 Data Preparation in MATLAB®16 3.1 SoVI Canada MATLAB®Tool ......................... 17 3.2 Running SoVI analysis in MATLAB®..................... 18 4 SoVI MATLAB®Code: Implementation, Explanations, and Output Figures 18 4.1 Importing Data ................................. 18 4.2 Common Forward Sortation Areas (FSAs) of 2016 and 2021 Census . . . . 19 4.3 Connecting CatIQ and 2016 Census Data ................... 19 4.4 SoVI Variables ................................. 20 4.5 Processing Census Data for SoVI Variables .................. 21 4.6 Data Reduction and Visualization ....................... 25 4.6.1 Filtering FSAs with Missing Data and Mapping Results ....... 25 4.6.2 Filling Zero Data with Median ..................... 27 4.6.3 Setting Power (Box-Cox) Transformation for the Data ....... 28 4.6.4 Visualizing Correlation Matrix, Original and Z-Score Transformed Data ................................... 30 4.6.5 Checking Appropriateness of PCA: KMO, Bartlett’s Test, Cronbach’s Alpha .............................. 33 4.6.6 Performing PCA ............................ 33 4.7 Selecting Eigenvalues and Visualizing Results ................ 34 4.8 Assessing Consistency ............................. 35 5 Results and Visualization 43 5.1 Visualizing Nine Factors of PCA ........................ 47 5.2 Visualizing SoVI, NSI, and SES ........................ 56 1
List of Figures 1 Flowchart outlining the construction of the SoVI (modified after Chakraborty et al., 2020). ................................... 15 2 Deleted FSAs due to missing data. ...................... 26 3 Correlation matrix of the 46 SoVI variables, excluding the three variables described in Section 2.1 ............................. 30 4 Boxplot of the original data of the 46 SoVI variables. ............ 31 5 Boxplot of Z-scores for the 46 SoVI variables, showing the distribution, spread, and potential outliers in the standardized data. ........... 32 6 Scree plot of eigenvalues after PCA, showing the variance explained by each principal component. Nine multidimensional components with eigenvalues ≥1 are identified and extracted for further analysis. ............. 34 7 Before rotation, components are ordered by the variance they explain, resulting in an uneven distribution across factors (see Section 2.2). . . . . . . 38 8 Evaluation of factor-score consistency: each subplot shows the relationship between a normalized rotated factor score and the Z-scored original variable most strongly associated with that factor (first choice based on rotated loadings). .................................... 39 9 As in Figure 8, the scatter plots compare normalized rotated factor scores with an alternative set of original variables (second selection) based on rotated loadings. ................................ 40 10 Scatter plot matrix of extracted factors, showing pairwise relationships between components. The diagonal plots display histograms or density distributions of individual factors, while off-diagonal plots visualize pairwise correlations between factors. .......................... 41 11 The top map displays the distribution of scores for Factor 1 (indicators of ethnicity and visible minority) across FSAs. The normalized weight for the rotated Factor 1 is indicated above the map. This weight represents the relative contribution of each factor to the total variance explained by the selected components. The bottom left histogram visualizes the score distribution, while the bottom right boxplot highlights the spread and potential outliers in Factor 1 scores. ........................... 47 12 Similar to Fig. 11, but for Factor 2 (indicators related to ability to cope with/special needs population and employment status). ........... 48 13 Similar to Fig. 11, but for Factor 3 (indicators related to ability to cope with/special needs population and household/family structure). ....... 49 14 Similar to Fig. 11, but for Factor 4 (indicators related to access to financial resources/wealth and built environment/accessibility). ............ 50 15 Similar to Fig. 11, but for Factor 5 (indicators related to ethnicity and built environment/accessibility). ........................... 51 16 Similar to Fig. 11, but for Factor 6 (indicators associated with education and occupation). ................................. 52 17 Similar to Fig. 11, but for Factor 7 (indicators reflecting visible minority and built environment/accessibility). ..................... 53 18 Similar to Fig. 11, but for Factor 8 (indicators associated with ethnicity and access to financial resources/wealth). ................... 54 19 Similar to Fig. 11, but for Factor 9 (indicators related to access to financial resources/wealth and occupation). ....................... 55 20 Similar to Fig. 11, but for SoVI. ........................ 56 2
21 Similar to Fig. 11, but for NSI. ........................ 57 22 Similar to Fig. 11, but for SES. ........................ 58 S1 The top map shows the distribution of the first SoVI variable (Female) across each FSA, as indicated in the map title. The bottom left histogram illustrates the overall data distribution, while the bottom right boxplot highlights the spread, central tendency, and potential outliers of this variable. 62 S2 Similar to Figure S1, but showing the distribution of the 2nd variable (Female labour force participation). ........................ 63 S3 Similar to Figure S1, but showing the distribution of the 3rd variable (Age). 64 S4 Similar to Figure S1, but showing the distribution of the 4th variable (Senior). 65 S5 Similar to Figure S1, but showing the distribution of the 5th variable (Children under 5 years of age). ........................... 66 S6 Similar to Figure S1, but showing the distribution of the 6th variable (Children under 15 years of age). .......................... 67 S7 Similar to Figure S1, but showing the distribution of the 9th variable (Unattached one-person household). ...................... 68 S8 Similar to Figure S1, but showing the distribution of the 11th variable (Lone parents). ..................................... 69 S9 Similar to Figure S1, but showing the distribution of the 12th variable (Couples with children). ............................ 70 S10 Similar to Figure S1, but showing the distribution of the 13rd variable (Household size). ................................ 71 S11 Similar to Figure S1, but showing the distribution of the 14th variable (Official language knowledge). ......................... 72 S12 Similar to Figure S1, but showing the distribution of the 15th variable (English/French). ................................ 73 S13 Similar to Figure S1, but showing the distribution of the 16th variable (First-generation status). ............................ 74 S14 Similar to Figure S1, but showing the distribution of the 17th variable (Foreign-born Canadian citizens). ....................... 75 S15 Similar to Figure S1, but showing the distribution of the 18th variable (Aboriginal Peoples). .............................. 76 S16 Similar to Figure S1, but showing the distribution of the 19th variable (Indian/Inuit/M´etis). .............................. 77 S17 Similar to Figure S1, but showing the distribution of the 20th variable (Year of immigration). ................................. 78 S18 Similar to Figure S1, but showing the distribution of the 21st variable (White). 79 S19 Similar to Figure S1, but showing the distribution of the 22nd variable (Black). ..................................... 80 S20 Similar to Figure S1, but showing the distribution of the 23rd variable (South Asian). .................................. 81 S21 Similar to Figure S1, but showing the distribution of the 24th variable (Chinese). .................................... 82 S22 Similar to Figure S1, but showing the distribution of the 25th variable (Filipino). .................................... 83 S23 Similar to Figure S1, but showing the distribution of the 26th variable (Latin American). ................................ 84 S24 Similar to Figure S1, but showing the distribution of the 27th variable (No certificate/diploma). .............................. 85 3
S25 Similar to Figure S1, but showing the distribution of the 28th variable (Post-secondary certificate). .......................... 86 S26 Similar to Figure S1, but showing the distribution of the 29th variable (Shelter-cost-to-income ratio). ......................... 87 S27 Similar to Figure S1, but showing the distribution of the 30th variable (Government transfer). ............................. 88 S28 Similar to Figure S1, but showing the distribution of the 31st variable (Low income). ..................................... 89 S29 Similar to Figure S1, but showing the distribution of the 32nd variable (Dwelling value). ................................ 90 S30 Similar to Figure S1, but showing the distribution of the 33rd variable (Income). .................................... 91 S31 Similar to Figure S1, but showing the distribution of the 34th variable (Management). ................................. 92 S32 Similar to Figure S1, but showing the distribution of the 35th variable (Business, finance & administration). ..................... 93 S33 Similar to Figure S1, but showing the distribution of the 36th variable (Health). ..................................... 94 S34 Similar to Figure S1, but showing the distribution of the 37th variable (Education, law, social community & govt service). ............. 95 S35 Similar to Figure S1, but showing the distribution of the 38th variable (Sales and service). ................................... 96 S36 Similar to Figure S1, but showing the distribution of the 39th variable (Unemployed). .................................. 97 S37 Similar to Figure S1, but showing the distribution of the 40th variable (Not in the labour force). ............................... 98 S38 Similar to Figure S1, but showing the distribution of the 41st variable (House with major repair). ........................... 99 S39 Similar to Figure S1, but showing the distribution of the 42nd variable (Crowded home). ................................100 S40 Similar to Figure S1, but showing the distribution of the 43rd variable (Period of home construction). .........................101 S41 Similar to Figure S1, but showing the distribution of the 44th variable (Dwelling is in apartment with 5+ stories built before 1980). ........102 S42 Similar to Figure S1, but showing the distribution of the 45th variable (Renters). ....................................103 S43 Similar to Figure S1, but showing the distribution of the 46th variable (No private vehicle/Public transit). .........................104 S44 Similar to Figure S1, but showing the distribution of the 47th variable (Population density (urban/rural)). ......................105 S45 Similar to Figure S1, but showing the distribution of the 48th variable (Mobility). ....................................106 S46 Similar to Figure S1, but showing the distribution of the 49th variable (Dwelling size). .................................107 4
List of Tables 1 Social vulnerability indicators and descriptions of variables (adopted from Chakraborty et al. (2020). ........................... 10 2 Result of PCA component rotation matrix. Each column (C1–C9) represents a retained component after varimax rotation. Columns shaded in light grey indicate components for which the sign is flipped to improve interpretability and ensure directional consistency (see Listing 23). ..... 45 5
Listings 1 A script for importing data, including Canada’s coastlines, census data, and geographic information for FSAs—such as demographic attributes, provincial groupings, and centroid coordinates. ................... 18 2 A script for finding and using only the common FSAs in both 2016 and 2021 Census datasets and aligning the 2016 Census and CatIQ datasets by FSA index. ................................... 19 3 Identifying missing census data and calculating population density. . . . . 19 4 Setting the 46 SoVI variables as described in Chakraborty et al. (2020) (see Table 1). .................................. 20 5 Computing SoVI variables for the first indicator: ability to cope with / special needs population. ............................ 21 6 Computing SoVI variables for the 2nd indicator: household / family structure.21 7 Computing SoVI variables for the 3rd indicator: ethnicity........... 22 8 Computing SoVI variables for the 4th indicator: visible minority....... 22 9 Computing SoVI variables for the 5th indicator: education.......... 22 10 Computing SoVI variables for the 6th indicator: access to financial resources / wealth................................. 23 11 Computing SoVI variables for the 7th indicator: occupation.......... 23 12 Computing SoVI variables for the 8th indicator: employment status.. . . . 23 13 Computing SoVI variables for the 9th indicator: built environment / accessibility....................................... 24 14 Data reduction and plotting of deleted FSAs due to missing data (Fig. 2). 25 15 Filling zero data with median. ......................... 27 16 Power transformation option for the data: (0) no power transformation or (1) power transformation. ........................... 28 17 Visualizing the spatial and statistical distribution of 46 SoVI variables (note that 3 variables with no data are removed; see Section 2.1). ......... 30 18 Checking relevance of sub-indicators in the correlation matrix, and multicollinearity (Fig. 3). All variables are normalized and standardized at the same scale as Z-score transformation with zero mean and one standard deviation (Figs. 4 & 5). ............................. 33 19 Checking appropriateness of the input data to PCA. ............. 33 20 Performing PCA with varimax rotation and Kaiser criterion for component: variable output details provided in comments. ................ 33 21 Performing PCA: Scree plot of eigenvalues with the number of factors selected based on eigenvalues ≥1, showing the explained variance (Fig. 6) . 34 22 Performing PCA: assessing the consistency between factor rotation and the original data selection (Part 1 - Original data; Fig. 7). ............ 35 23 Performing PCA: checking the consistency between factor rotation and the original data selection, including sign adjustment and normalization. The signs of unrotated Factors 3 and 7 are adjusted, along with the signs of rotated Factors 3, 4, 6, 7, and 8, to ensure consistent interpretation (Part 2 - Factor rotation; Fig. 8; Table 2). ...................... 36 24 Comparison of rotated factor scores with selected original variables to assess consistency between PCA results and input data (Figs. 8 & 9). ....... 37 25 Plotting the final score in a scatter plot matrix (Fig. 10) and computing SoVI, NSI, and SES. .............................. 42 26 Visualizing: 9 factors of PCA, SoVI, NSI, and SES. ............. 46 6
S1 Record layout (column headings) from the 2016 Profile data file, showing selected variables. The metadata include the FSA (GEO NAME) and population counts disaggregated by sex: total, male, and female shown in the last three lines, from which we extracted the 2016 Census data. ...... 61 S2 Similar to Listing S1, this shows the record layout for the 2021 Census Profile data file. While the geographic metadata (GEO NAME) remain consistent with the 2016 format, population data are provided under updated column headings: C1 COUNT TOTAL+, C2 COUNT MEN+, and C3 COUNT WOMEN+. ............................ 61 7
1 Introduction Over half of the global population resides in regions that are highly vulnerable to at least one form of natural hazards, such as floods, hurricanes, bushfires, and earthquakes (Pavi´c et al., 2020). Rapid global population growth and urbanization have increased exposure to these natural hazards. In the past two and a half decades, numerous natural disasters have claimed hundreds of thousands of lives and caused billions of dollars in economic losses (e.g., Cred, 2020; Bhola et al., 2023). For instance, the most notable seismic events, each resulting in over 10,000 fatalities, include the 2001 Gujarat earthquake, the 2004 Indian Ocean earthquake and tsunami, which impacted Southeast Asian countries, such as Indonesia, Thailand, and Sri Lanka, the 2005 Kashmir earthquake in Pakistan, the 2010 Haiti earthquake, the 2011 Tohoku earthquake and tsunami in Japan, the 2015 Nepal earthquake, and the 2023 Turkey–Syria earthquake (National Geophysical Data Center / World Data Service (NGDC/WDS), 2024). Considering the Canadian context, significant disasters which heavily impacted local communities include Hurricane Igor in Newfoundland in 2010, the 2013 Southern Alberta floods, and the 2016 Fort McMurray (Canada, 2019). Hazards affect communities at varying levels of vulnerability, influenced by factors, such as economic conditions, gender, ethnicity, age (particularly children and the elderly), disability, and immigration status (Blaikie et al., 2014; Chakraborty et al., 2020). With increasing risks from global climate change, coupled with population growth and economic development, it is crucial to understand how different socio-demographic factors and community characteristics influence the impacts of hazards. This understanding is key to disaster risk reduction, hazard mitigation, and building community resilience (Blaikie et al., 2014; Cutter & Emrich, 2017; Chakraborty et al., 2020; Zaman & Raihan, 2023). Social vulnerability in the context of natural hazards refers to the characteristics and circumstances of individuals or groups that affect their ability to anticipate, cope with, withstand, and recover from environmental hazards, disasters, and other events (Blaikie et al., 2014; Chakraborty et al., 2020). Unlike physical vulnerability, which focuses on exposure to hazards, social vulnerability highlights disparities in risk and resilience based on social conditions. Social factors, such as socioeconomic status, demographic, race, age, gender, health, disability, housing, and employment, play a significant role in shaping a community’s vulnerability (Cutter et al., 2003; Flanagan et al., 2011; Cutter & Emrich, 2017). These factors collectively determine how individuals and communities prepare for, respond to, and recover from adverse events. The Social Vulnerability Index (SoVI) is a data-driven tool used to assess and compare the social vulnerability of communities to environmental hazards and disasters across different locations (Fekete, 2009; Armas ,& Gavris ,,2013; Cutter & Emrich, 2017; Tarling, 2017; Domingue & Emrich, 2019; Chakraborty et al., 2021; Mengal et al., 2021; Blackwood & Cutter, 2023). Analyzing spatiotemporal social vulnerability is crucial for identifying vulnerable subgroups and communities that may need targeted support in preparedness, response, and recovery efforts. It also aids in developing effective disaster risk reduction strategies. SoVI analysis plays a key role in prioritizing budget and resource allocation for highly vulnerable regions, helping to reduce inequalities and support marginalized groups within communities (Nirupama, 2012; Chakraborty et al., 2020). This SoVI report for Canada is designed to provide a concise yet comprehensive overview of the SoVI algorithm and its implementation using MATLAB®. It serves as a practical guide for graduate students and researchers who are interested in social vulnerability analysis, providing the essential tool to assess and map spatial patterns of 8
Figure 1. Flowchart outlining the construction of the SoVI (modified after Chakraborty et al., 2020). 15
2.3 Overview of Interpretation of SoVI Results We provide a general approach to interpreting the results of SoVI, NSI, and SES. Users of this tool should have a solid understanding of the scientific principles behind these indices, including their methodologies and applications, to ensure accurate analysis and interpretation. The SoVI is a composite measure used to assess a community’s relative vulnerability to hazards. It is primarily based on demographic, economic, and social variables derived from census data. SoVI employs PCA to reduce multiple socioeconomic indicators into a smaller set of factors that explain most of the variation in vulnerability. Higher SoVI values indicate greater vulnerability, meaning communities may face greater challenges in disaster preparedness, response, and recovery. SoVI is widely used in disaster risk assessment, emergency management, and resilience planning. The NSI measures social vulnerability of a given geographical area (e.g., an FSA) relative to other areas on a linear scale. Since NSI values can be positive or negative, direct interpretation and comparison across different places can be challenging. The calculation of NSI is based on PCA, where each component’s weight is determined by the proportion of variance it explains. However, there is no strict theoretical basis for assigning these weights in PCA-based indices (Chakraborty et al., 2020). To standardize the interpretation of SES across Canada, an SES index (ranging from 0 to 100) can be adopted (Chakraborty et al., 2020). This transformation allows for easier comparison between FSAs, ensuring that SES values are presented on a common scale. Similar to Chakraborty et al. (2020), the reversed SES index is designed to assigns higher values to areas with better socioeconomic conditions and lower values to areas with greater social vulnerability (see Listing 25). Building on this conceptual foundation, the next step involves the technical preparation of data required for constructing the SoVI and related indices. 3 Data Preparation in MATLAB® This SoVI report investigates socioeconomic inequality across Canada using the SoVI derived from the 2016 Census dataset (catalogue no. 98-401-X2016046). The 2021 Census dataset is used only to identify the intersecting FSAs between the two datasets. In other words, the 2021 dataset is not used in the main SoVI analysis. A total of 1,626 FSAs common to both the 2016 and 2021 datasets are considered in the analysis (see Listing 1for the MATLAB®code). The scope of the data examined includes age, sex, dwelling type, families, households, marital status, language, income, immigration and ethnocultural diversity, housing, Indigenous peoples, education, labour, commuting, mobility and migration, and language of work. The metadata describing the CSV file record layout for the 2016 and 2021 datasets are presented in Listing S1 and Listing S2. Further details on the profile data can be found in 98-401-X2016046 English meta.txt for the 2016 Census of our MATLAB®tool. 16
3.1 SoVI Canada MATLAB®Tool The SoVI-Census-2016-Canada MATLAB®tool contain files and directories as shown below. SoVI-Census-2016-2021-Canada/ |-- 98-401-X2016046_eng_CSV-2016-Census/ | |-- 98-401-X2016046_English_CSV_data.csv | |-- 98-401-X2016046_English_meta.txt | |-- Geo_starting_row_CSV.csv | |-- link.txt | |-- README_meta.txt |-- 98-401-X2021013_eng_CSV-2021-Census/ | |-- 98-401-X2021013_English_CSV_data.csv | |-- 98-401-X2021013_English__meta.txt | |-- Geo_starting_row_CSV.csv | |-- link.txt | |-- README_meta.txt |-- kmo_SOVI.m |-- barspher_SOVI.m |-- cronbach_SOVI.m |-- License.txt |-- figs16/ (optional) |-- SoVI_Census2016_Canada.m |-- coastline_Canada_GEODAS.mat |-- Census_2016_FSA_full.mat |-- Census_2021_FSA_full.mat |-- CATIQ_Canada.mat The 98-401-X2016046 eng CSV-2016-Census directory contains raw data from the 2016 Census in CSV format, along with metadata and supporting files in plain text format. Similarly, the 98-401-X2021013 eng CSV-2021-Census directory contains data from the 2021 Census in the same format. Statistical functions, including Kaiser-Meyer-Olkin (KMO) test (Trujillo-Ortiz, 2024a), Bartlett’s test of sphericity (Trujillo-Ortiz, 2024b), and Cronbach’s alpha (Nagel, 2024), are included in the MATLAB®tool. The figs16 directory is created to store output figures generated by the SoVI Census2016 Canada.m script on MATLAB®. Creation of this folder is optional. The file Census 2016 FSA full.mat is the MATLAB®-formatted version of 98-401X2016046 English CSV data.csv, containing only Census data for individual FSAs, with the overall ’Canada’ summary data excluded. The file Census 2021 FSA full.mat contains the corresponding data for 2021, reshaped from 98-401-X2021013 English CSV data.csv. The 2021 dataset does not include the ’Canada’ summary, so no exclusions are necessary. The file CATIQ Canada.mat contains three data structures: CENSUS, FSA, and FSA loc. The CENSUS table includes data for each FSA, such as the Census FSA index, CATIQ FSA index, population, total private dwellings, private dwellings occupied by usual residents, area, and population density. The FSA table lists FSAs by province, while the FSA loc table provides the geographic centroids (latitude and longitude) of each FSA. Coastline Canada GEODAS.mat is Canada’s coastline data in MATLAB®format, represented as polyline geometry. 17
3.2 Running SoVI analysis in MATLAB® Once the SoVI-Census-2016-Canada MATLAB®tool is already in the MATLAB®path, the process can be started by launching MATLAB®, navigating to the SoVI directory, and running the following command in the command prompt: >> SoVI_Census2016_Canada <Enter> The necessary calculations will be performed, generating figures throughout the process. While the results can be used for further analysis and interpretation, a functionality to automatically save them (i.e., the calculation results and figures) is not included in the script. The following sections contain the MATLAB®code, explanations, and corresponding output figures. Note that long lines of the code have been broken into shorter segments for better readability in this report. 4 SoVI MATLAB®Code: Implementation, Explanations, and Output Figures 4.1 Importing Data Listing 1: A script for importing data, including Canada’s coastlines, census data, and geographic information for FSAs—such as demographic attributes, provincial groupings, and centroid coordinates. 1clear 2close all 3 4load coastline_Canada_GEODAS PolyLon PolyLat 5 6load Census_2016_FSA_full CensusFSAname_2016 CensusFSA_2016_F ... 7CensusFSA_2016_M CensusFSA_2016_T 8 9load Census_2021_FSA_full CensusFSAname_2021 10 11 load CATIQ_Canada CENSUS FSA FSA_loc 18
4.2 Common Forward Sortation Areas (FSAs) of 2016 and 2021 Census Listing 2: A script for finding and using only the common FSAs in both 2016 and 2021 Census datasets and aligning the 2016 Census and CatIQ datasets by FSA index. 12 % Get common FSA on 2021 Census and 2016 CATIQ; 13 % and their indices (idx_Census and idx_CATIQ) 14 15 [~,check1 ,idx_CATIQ] = intersect(string(CensusFSAname_2021(:,1)),string(FSA(:,2))); 16 [~,idx_Census,check2] = intersect(string(CensusFSAname_2016(:,1)),string( ,→CensusFSAname_2021(:,1))); 17 18 % Use only common FSA on 2016 and 2021 19 20 CensusFSAname_2016 = CensusFSAname_2016(idx_Census,1); 21 CensusFSA_2016_F = CensusFSA_2016_F(:,idx_Census); 22 CensusFSA_2016_M = CensusFSA_2016_M(:,idx_Census); 23 CensusFSA_2016_T = CensusFSA_2016_T(:,idx_Census); 24 25 CENSUS = sortrows(CENSUS,2); % Now the order of CENSUS, FSA, and FSA_loc is the same 26 27 CENSUS = CENSUS(idx_CATIQ,:); 28 FSA = FSA(idx_CATIQ,:); 29 FSA_loc = FSA_loc(idx_CATIQ,:); 4.3 Connecting CatIQ and 2016 Census Data Listing 3: Identifying missing census data and calculating population density. 30 % 2016 CENSUS 31 % 1) Census FSA index (1 to 1641) 32 % 2) CATIQ FSA index (1 to 1641) 33 % 3) Population, 2016 34 % 4) Total private dwellings, 2016 35 % 5) Private dwellings occupied by usual residents, 2016 36 % 6) Area Sq Km 37 % 7) Population density 38 39 % This criterion reflects whether FSA-level CATIQ information is sufficient or not. 40 41 census_nodata = find(CENSUS(:,6)==-1); 42 census_withdata = find(CENSUS(:,6)~=-1); 43 44 CENSUS(census_nodata,6) = NaN; 45 46 CENSUS(:,7) = CENSUS(:,3)./CENSUS(:,6); 19
4.4 SoVI Variables Listing 4: Setting the 46 SoVI variables as described in Chakraborty et al. (2020) (see Table 1). 47 SoVIvariable = {’Female’;’Female labour force participation’; ... 48 ’Age’;’Senior’;’Children under 5 years of age’; ... 49 ’Children under 15 years of age’;’Psychological disability’; ... 50 ’Physical disability’;’Unattached one-person household’; ... 51 ’Unattached elderly’;’Lone parents’; ... 52 ’More than 3 children in a family’;’Household size’; ... 53 ’Official language knowledge’;’English/French’; ... 54 ’First-generation status’;’Foreign-born Canadian citizens’; ... 55 ’Aboriginal Peoples’;’Indian/Inuit/M´etis’; ... 56 ’Year of immigration’;’White’;’Black’;’South Asian’; ... 57 ’Chinese’;’Filipino’;’Latin American’; ... 58 ’No certificate/diploma’;’Post-secondary certificate’; ... 59 ’Shelter-cost-to-income ratio’;’Government transfer’; ... 60 ’Low income’;’Dwelling value’;’Income’; ... 61 ’Management’;’Business, finance & administration’; ... 62 ’Health’;’Education, law, social community & govt service’; ... 63 ’Sales and service’;’Unemployed’;’Not in the labour force’; ... 64 ’House with major repair’;’Crowded home’; ... 65 ’Period of home construction’; ... 66 ’Dwelling is in apartment with 5+ stories built before 1980’; ... 67 ’Renters’;’No private vehicle/Public transit’; ... 68 ’Population density (urban/rural)’;’Mobility’;’Dwelling size’}; ... 69 % "More than 3 children in a family" is replaced with "Couples with children" 20
4.5 Processing Census Data for SoVI Variables Listing 5: Computing SoVI variables for the first indicator: ability to cope with / special needs population. 70 %% [Ability to cope with/ Special needs population] 71 72 % 1 ) Female - Item 8 [Table indicates ’Female’] 73 SoVIdata(:,1) = CensusFSA_2016_F(8,:)./CensusFSA_2016_T(8,:); 74 75 % 2 ) Female labour force participation - Items 1865 and 1866 [Table indicates ’Female ,→’] 76 SoVIdata(:,2) = CensusFSA_2016_F(1866,:)./CensusFSA_2016_F(1865,:); 77 78 % 3 ) Age - Item 40 79 SoVIdata(:,3) = CensusFSA_2016_T(40,:); % Not a ratio yet 80 81 % 4 ) Senior - Items 8 and 24 82 SoVIdata(:,4) = CensusFSA_2016_T(24,:)./CensusFSA_2016_T(8,:); 83 84 % 5 ) Children under 5 years of age - Items 8 and 10 85 SoVIdata(:,5) = CensusFSA_2016_T(10,:)./CensusFSA_2016_T(8,:); 86 87 % 6 ) Children under 15 years of age - Items 8 and 9 88 SoVIdata(:,6) = CensusFSA_2016_T(9,:)./CensusFSA_2016_T(8,:); 89 90 % 7 ) Psychological disability 91 SoVIdata(:,7) = NaN; 92 93 % 8 ) Physical disability 94 SoVIdata(:,8) = NaN; 95 96 % 9 ) Unattached one-person household - Items 59, 65, 66, 67 97 SoVIdata(:,9) = (CensusFSA_2016_T(65,:)+CensusFSA_2016_T(66,:)+CensusFSA_2016_T(67,:)) ,→./CensusFSA_2016_T(59,:); 98 99 % 10) Unattached elderly 100 SoVIdata(:,10) = NaN; Listing 6: Computing SoVI variables for the 2nd indicator: household / family structure. 101 %% [Household/ Family Structure] 102 103 % 11) Lone parents - Items 74 and 78 104 SoVIdata(:,11) = CensusFSA_2016_T(78,:)./CensusFSA_2016_T(74,:); 105 106 % % 12) More than 3 children in a family - Items 81 and 86 107 % SoVIdata(:,12) = CensusFSA_2016_T(86,:)./CensusFSA_2016_T(81,:); 108 % 12) Change to Couples with children - Items 81 and 83 109 SoVIdata(:,12) = CensusFSA_2016_T(83,:)./CensusFSA_2016_T(81,:); 110 111 % 13) Household size - Item 58 112 SoVIdata(:,13) = CensusFSA_2016_T(58,:); % Not a ratio yet 21
Listing 7: Computing SoVI variables for the 3rd indicator: ethnicity. 113 %% [Ethnicity] 114 115 % 14) Official language knowledge - Items 100 and 104 116 SoVIdata(:,14) = CensusFSA_2016_T(104,:)./CensusFSA_2016_T(100,:); 117 118 % 15) English/French - Items 1338, 1354, 1363 119 SoVIdata(:,15) = (CensusFSA_2016_T(1354,:)+CensusFSA_2016_T(1363,:))./CensusFSA_2016_T ,→(1338,:); 120 121 % 16) First-generation status - Items 1278, 1279 122 SoVIdata(:,16) = CensusFSA_2016_T(1279,:)./CensusFSA_2016_T(1278,:); 123 124 % 17) Foreign-born Canadian citizens - Items 1140, 1142 125 SoVIdata(:,17) = CensusFSA_2016_T(1142,:)./CensusFSA_2016_T(1140,:); 126 127 % 18) Aboriginal Peoples - Items 1289, 1290 128 SoVIdata(:,18) = CensusFSA_2016_T(1290,:)./CensusFSA_2016_T(1289,:); 129 130 % 19) Indian/Inuit/M´etis - Items 1289, 1292, 1293, 1294 131 SoVIdata(:,19) = (CensusFSA_2016_T(1292,:)+CensusFSA_2016_T(1293,:)+CensusFSA_2016_T ,→(1294,:))./CensusFSA_2016_T(1289,:); 132 133 % 20) Year of immigration - Items 1140, 1149 134 SoVIdata(:,20) = CensusFSA_2016_T(1149,:)./CensusFSA_2016_T(1140,:); Listing 8: Computing SoVI variables for the 4th indicator: visible minority. 135 %% [Visible Minority] 136 137 % 21) White - Items 1323, 1337 138 SoVIdata(:,21) = CensusFSA_2016_T(1337,:)./CensusFSA_2016_T(1323,:); 139 140 % 22) Black - Items 1323, 1327 141 SoVIdata(:,22) = CensusFSA_2016_T(1327,:)./CensusFSA_2016_T(1323,:); 142 143 % 23) South Asian - Items 1323, 1325 144 SoVIdata(:,23) = CensusFSA_2016_T(1325,:)./CensusFSA_2016_T(1323,:); 145 146 % 24) Chinese - Items 1323, 1326 147 SoVIdata(:,24) = CensusFSA_2016_T(1326,:)./CensusFSA_2016_T(1323,:); 148 149 % 25) Filipino - Items 1323, 1328 150 SoVIdata(:,25) = CensusFSA_2016_T(1328,:)./CensusFSA_2016_T(1323,:); 151 152 % 26) Latin American - Items 1323, 1329 153 SoVIdata(:,26) = CensusFSA_2016_T(1329,:)./CensusFSA_2016_T(1323,:); Listing 9: Computing SoVI variables for the 5th indicator: education. 154 %% [Education] 155 156 % 27) No certificate/diploma - Items 1683, 1684 157 SoVIdata(:,27) = CensusFSA_2016_T(1684,:)./CensusFSA_2016_T(1683,:); 158 159 % 28) Post-secondary certificate - Items 1683, 1686 160 SoVIdata(:,28) = CensusFSA_2016_T(1686,:)./CensusFSA_2016_T(1683,:); 22
Listing 10: Computing SoVI variables for the 6th indicator: access to financial resources / wealth. 161 %% [Access to Financial Resources/ Wealth] 162 163 % 29) Shelter-cost-to-income ratio - Items 1667, 1669 164 SoVIdata(:,29) = CensusFSA_2016_T(1669,:)./CensusFSA_2016_T(1667,:); 165 166 % 30) Government transfer - Items 661, 668 167 SoVIdata(:,30) = CensusFSA_2016_T(668,:)./CensusFSA_2016_T(661,:); 168 169 % 31) Low income - Item 867 170 SoVIdata(:,31) = CensusFSA_2016_T(867,:)/100; % Ratio, not in percentage 171 172 % 32) Dwelling value - Item 1676 173 SoVIdata(:,32) = CensusFSA_2016_T(1676,:); % Not a ratio yet 174 175 % 33) Income - Item 665 176 SoVIdata(:,33) = CensusFSA_2016_T(665,:); % Not a ratio yet Listing 11: Computing SoVI variables for the 7th indicator: occupation. 177 %% [Occupation] 178 179 % 34) Management - Items 1886, 1887 180 SoVIdata(:,34) = CensusFSA_2016_T(1887,:)./CensusFSA_2016_T(1886,:); 181 182 % 35) Business, finance & administration - Items 1886, 1888 183 SoVIdata(:,35) = CensusFSA_2016_T(1888,:)./CensusFSA_2016_T(1886,:); 184 185 % 36) Health - Items 1886, 1890 186 SoVIdata(:,36) = CensusFSA_2016_T(1890,:)./CensusFSA_2016_T(1886,:); 187 188 % 37) Education, law, social community & govt service - Items 1886, 1891 189 SoVIdata(:,37) = CensusFSA_2016_T(1891,:)./CensusFSA_2016_T(1886,:); 190 191 % 38) Sales and service - Items 1886, 1893 192 SoVIdata(:,38) = CensusFSA_2016_T(1893,:)./CensusFSA_2016_T(1886,:); Listing 12: Computing SoVI variables for the 8th indicator: employment status. 193 %% [Employment Status] 194 195 % 39) Unemployed - Items 1865, 1868 196 SoVIdata(:,39) = CensusFSA_2016_T(1868,:)./CensusFSA_2016_T(1865,:); 197 198 % 40) Not in the labour force - Items 1865, 1869 [Table indicates ’Male’] 199 SoVIdata(:,40) = CensusFSA_2016_M(1869,:)./CensusFSA_2016_M(1865,:); 23
Listing 13: Computing SoVI variables for the 9th indicator: built environment / accessibility. 200 %% [Built Environment/ Accessibility] 201 202 % 41) House with major repair - Items 1651, 1653 203 SoVIdata(:,41) = CensusFSA_2016_T(1653,:)./CensusFSA_2016_T(1651,:); 204 205 % 42) Crowded home - Items 1640, 1642 206 SoVIdata(:,42) = CensusFSA_2016_T(1642,:)./CensusFSA_2016_T(1640,:); % Housing ,→suitability 207 208 % 43) Period of home construction - Items 1643, 1644 [Table indicates 1970 but there ,→are only 1960 or 1980] 209 SoVIdata(:,43) = CensusFSA_2016_T(1644,:)./CensusFSA_2016_T(1643,:); 210 211 % 44) Dwelling is in apartment with 5+ stories built before 1980 212 SoVIdata(:,44) = (CensusFSA_2016_T(43,:)./CensusFSA_2016_T(41,:)).*(CensusFSA_2016_T ,→(1644,:)+CensusFSA_2016_T(1645,:))./CensusFSA_2016_T(1643,:); 213 214 % 45) Renters - Items 1617, 1619 215 SoVIdata(:,45) = CensusFSA_2016_T(1619,:)./CensusFSA_2016_T(1617,:); 216 217 % 46) No private vehicle/Public transit - Items 1930, 1933 218 SoVIdata(:,46) = CensusFSA_2016_T(1933,:)./CensusFSA_2016_T(1930,:); 219 220 % 47) Population density (urban/rural) - Item 6 [All values are NaNs] 221 SoVIdata(:,47) = CENSUS(:,7); 222 223 % 48) Mobility - Items 2230, 2233 - Footnote 237: Refers to the status of a person ,→with regard to the place of residence on the reference day, May 10, 2016, in ,→relation to the place of residence on the same date one year earlier at the ,→provincial level. Persons who have not moved are referred to as non-movers and ,→persons who have moved from one residence to another are referred to as movers. ,→Movers include non-migrants and migrants. Non-migrants are persons who did ,→move but remained in the same city, town, township, village or Indian reserve. ,→Migrants include internal migrants, who moved to a different city, town, ,→township, village or Indian reserve within Canada. External migrants include ,→persons who lived outside Canada at the earlier reference date. 224 SoVIdata(:,48) = CensusFSA_2016_T(2233,:)./CensusFSA_2016_T(2230,:); 225 226 % 49) Dwelling size - Item 1636 227 SoVIdata(:,49) = CensusFSA_2016_T(1636,:); % Not a ratio yet 24
Figure 4. Boxplot of the original data of the 46 SoVI variables. 31
Figure 5. Boxplot of Z-scores for the 46 SoVI variables, showing the distribution, spread, and potential outliers in the standardized data. 32
Listing 18: Checking relevance of sub-indicators in the correlation matrix, and multicollinearity (Fig. 3). All variables are normalized and standardized at the same scale as Z-score transformation with zero mean and one standard deviation (Figs. 4&5). 392 %% Explanatory data analysis 393 394 Corr = corr(SoVIdata); 395 396 figure (2) 397 imagesc(Corr); hold on; 398 colorbar; colormap(’jet’); clim([-1 1]); axis square; 399 title(’Correlation coefficient’); 400 401 figure(3) 402 boxplot(SoVIdata,’Orientation’,’horizontal’,’Labels’,SoVIvariable); 403 ax = gca; ax.YDir = ’reverse’; axis square; 404 title(’Original data’); 405 406 figure(4) 407 boxplot(zscore(SoVIdata),’Orientation’,’horizontal’,’Labels’,SoVIvariable); 408 ax = gca; ax.YDir = ’reverse’; axis square; 409 title(’Z score’); 4.6.5 Checking Appropriateness of PCA: KMO, Bartlett’s Test, Cronbach’s Alpha Listing 19: Checking appropriateness of the input data to PCA. 410 % Kaiser-Meyer-Olkin measure of sampling adequacy 411 kmo_SOVI(zscore(SoVIdata)) 412 413 % Bartlett’s test 414 barspher_SOVI(zscore(SoVIdata),0.01); 415 416 % Cronbach’s alpha 417 cronbach_SOVI(zscore(SoVIdata)) 4.6.6 Performing PCA Listing 20: Performing PCA with varimax rotation and Kaiser criterion for component: variable output details provided in comments. 418 %% Principal Component Analysis for Social Vulnerability Index (no rotation) 419 420 % wcoef : contains the coefficients of the principal components (loadings) 421 % score : contains the coordinates of the original data in the new coordinate ,→system defined by the principal components (score = data*wcoeff) 422 % latent : contains the variance explained by the corresponding principal component 423 % tssquared: statistical measure of the multivariate distance of each observation from ,→the center of the data set 424 % explained: contains the percent variance explained by the corresponding principal ,→component 425 % wcoeff has the unit vector length and woeff columns are orthogonal 426 427 w = 1./var(zscore(SoVIdata)); % This is for equal weighting 428 [wcoeff,score,latent,tsquared,explained] = pca(zscore(SoVIdata),’VariableWeights’,w); 33
4.7 Selecting Eigenvalues and Visualizing Results Listing 21: Performing PCA: Scree plot of eigenvalues with the number of factors selected based on eigenvalues ≥1, showing the explained variance (Fig. 6) 429 num_factor = length(find(latent>=1)); 430 431 disp([num2str(sum(explained(1:num_factor))),’% of the variance is explained with ’, ,→num2str(num_factor),’ factors’]); 432 433 figure(5) 434 plot(1:size(SoVIdata,2),latent,’bo’); hold on; axis square; 435 plot(1:size(SoVIdata,2),ones(1,size(SoVIdata,2)),’k--’); 436 ylabel(’Eigenvalue’); xlabel(’Component’); Figure 6. Scree plot of eigenvalues after PCA, showing the variance explained by each principal component. Nine multidimensional components with eigenvalues ≥1 are identified and extracted for further analysis. 34
4.8 Assessing Consistency Listing 22: Performing PCA: assessing the consistency between factor rotation and the original data selection (Part 1 - Original data; Fig. 7). 437 figure(6) 438 %pareto(explained(1:10)); hold on; 439 %xlabel(’Principal component [unrotated]’); ylabel(’Variance explained (%)’); 440 441 %% Manually plot Pareto unrotated 442 443 % explained variances 1-9 444 explained_subset = explained(1:9); 445 [sortedVals, sortIdx] = sort(explained_subset, ’descend’); 446 cumVals = cumsum(sortedVals); 447 448 % cumsum 10 - to extend the line 449 target_val = 82.0; 450 cumVals_extended = [cumVals; cumVals(end)]; 451 452 % Create the figure 453 figure(6); 454 yyaxis left 455 bar(sortedVals, ’FaceColor’, [0.2 0.6 0.8]); 456 ylabel(’Variance Explained (%)’); 457 ylim([0 100]); 458 459 yyaxis right 460 % Extend x and y to connect the right axis 461 x_extended = [1:9, 9.5]; 462 y_extended = [cumVals; target_val]; 463 464 plot(x_extended, y_extended, ’-’,’Color’, [0.85 0.33 0.1], ’LineWidth’, 1.0); 465 ylabel(’Cumulative Variance (%)’); 466 ylim([0 100]); 467 468 xlim([0.5, 9.5]); 469 xticks(1:9) 470 xticklabels(string(sortIdx)) 471 xlabel(’Principal Component [unrotated]’); 472 grid off; 473 474 %% 35
Listing 23: Performing PCA: checking the consistency between factor rotation and the original data selection, including sign adjustment and normalization. The signs of unrotated Factors 3 and 7 are adjusted, along with the signs of rotated Factors 3, 4, 6, 7, and 8, to ensure consistent interpretation (Part 2 - Factor rotation; Fig. 8; Table 2). 475 % Compare with Table 2 in Chakraborty et al. (2020) 476 wcoeffred = wcoeff(:,1:num_factor); 477 wcoeffred(abs(wcoeffred)<0.25) = 0; 478 479 sign_wcoeff = ones(1,num_factor); 480 sign_wcoeff([3 7]) = -1; % Determined by inspecting wcoeffred 481 for ii = 1:num_factor 482 wcoeffred(:,ii) = sign_wcoeff(ii)*wcoeffred(:,ii); 483 score_norm(:,ii) = sign_wcoeff(ii)*score(:,ii)/std(score(:,ii)); % Standardized ,→and sign-adjusted score 484 end 485 486 SVI_unrot = sum(score_norm,2); % Equal weighting - mean = 0 and var = num_factor 487 488 [mean(score_norm) std(score_norm)] 489 490 %% Principal Component Analysis for Social Vulnerability Index (varimax rotation) 491 % Varimax rotation: the order of the variances after rotation may change 492 % B = rotatefactors(A) rotates the d-by-m loadings matrix A to maximize the varimax ,→criterion, and returns the result in B. 493 % Rows of A and B correspond to variables and columns correspond to factors, for ,→example, the (i, j)th element of A is the coefficient for the ith variable on ,→the jth factor. 494 % The matrix A usually contains principal component coefficients created with pca or ,→pcacov, or factor loadings estimated with factoran. 495 496 [wcoeff_rot,rot_matrix] = rotatefactors(wcoeff(:,1:num_factor),’Method’,’Varimax’,’ ,→Normalize’,’on’,’maxit’,250); 497 498 % Compare with Table 2 in Chakraborty et al. (2020) 499 wcoeffred_rot = wcoeff_rot; 500 wcoeffred_rot(abs(wcoeffred_rot)<0.25) = 0; 501 502 score_rot = score(:,1:num_factor)*rot_matrix; 503 504 latent_rot(:,1) = var(score_rot); 505 506 sign_wcoeff_rot = ones(1,num_factor); 507 sign_wcoeff_rot([3 4 6 7 8]) = -1; % Determined by inspecting wcoeffred_rot 508 for ii = 1:num_factor 509 wcoeffred_rot(:,ii) = sign_wcoeff_rot(ii)*wcoeffred_rot(:,ii); 510 score_rot_norm(:,ii) = sign_wcoeff_rot(ii)*score_rot(:,ii)/std(score_rot(:,ii)); % ,→Standardized and sign-adjusted score 511 end 512 513 SVI_rot = sum(score_rot_norm,2); % Equal weighting - mean = 0 and var = num_factor 514 515 [mean(score_rot_norm) std(score_rot_norm)] 516 517 % Check on variance (latent) before and after varimax rotation 518 disp([’Variance before/after varimax rotation = ’,num2str(sum(latent(1:num_factor,1))) ,→,’&’,num2str(sum(latent_rot(:,1)))]) 36
Listing 24: Comparison of rotated factor scores with selected original variables to assess consistency between PCA results and input data (Figs. 8&9). 519 %% Check the consistency of the score_rot and the original data 520 521 pick_data1 = [13 37 8 28 15 25 19 12 31] % Selected based on wcoeffred - fisrt choice 522 523 figure (98) 524 for ii = 1:num_factor 525 subplot(3,3,ii); plot(score_rot_norm(:,ii),zscore(SoVIdata(:,pick_data1(ii))),’b.’ ,→); 526 xlabel([’Factor’,num2str(ii)]); ylabel(SoVIvariable(pick_data1(ii))); 527 title([SoVIvariable(pick_data1(ii)),num2str(wcoeff_rot(pick_data1(ii),ii))]); 528 end 529 530 pick_data2 = [18 4 35 6 38 34 43 30 36] % Selected based on wcoeffred - second choice 531 532 figure (99) 533 for ii = 1:num_factor 534 subplot(3,3,ii); plot(score_rot_norm(:,ii),zscore(SoVIdata(:,pick_data2(ii))),’b.’ ,→); 535 xlabel([’Factor’,num2str(ii)]); ylabel(SoVIvariable(pick_data2(ii))); 536 title([SoVIvariable(pick_data2(ii)),num2str(wcoeff_rot(pick_data2(ii),ii))]); 537 end 37
Figure 7. Before rotation, components are ordered by the variance they explain, resulting in an uneven distribution across factors (see Section 2.2). 38
Figure 8. Evaluation of factor-score consistency: each subplot shows the relationship between a normalized rotated factor score and the Z-scored original variable most strongly associated with that factor (first choice based on rotated loadings). 39
Figure 9. As in Figure 8, the scatter plots compare normalized rotated factor scores with an alternative set of original variables (second selection) based on rotated loadings. 40
5.1 Visualizing Nine Factors of PCA Figure 11. The top map displays the distribution of scores for Factor 1 (indicators of ethnicity and visible minority) across FSAs. The normalized weight for the rotated Factor 1 is indicated above the map. This weight represents the relative contribution of each factor to the total variance explained by the selected components. The bottom left histogram visualizes the score distribution, while the bottom right boxplot highlights the spread and potential outliers in Factor 1 scores. 47
Figure 12. Similar to Fig. 11, but for Factor 2 (indicators related to ability to cope with/special needs population and employment status). 48
Figure 13. Similar to Fig. 11, but for Factor 3 (indicators related to ability to cope with/special needs population and household/family structure). 49
Figure 14. Similar to Fig. 11, but for Factor 4 (indicators related to access to financial resources/wealth and built environment/accessibility). 50
Figure 15. Similar to Fig. 11, but for Factor 5 (indicators related to ethnicity and built environment/accessibility). 51
Figure 16. Similar to Fig. 11, but for Factor 6 (indicators associated with education and occupation). 52
Figure 17. Similar to Fig. 11, but for Factor 7 (indicators reflecting visible minority and built environment/accessibility). 53
Figure 18. Similar to Fig. 11, but for Factor 8 (indicators associated with ethnicity and access to financial resources/wealth). 54
Figure 19. Similar to Fig. 11, but for Factor 9 (indicators related to access to financial resources/wealth and occupation). 55
5.2 Visualizing SoVI, NSI, and SES Figure 20. Similar to Fig. 11, but for SoVI. 56
Figure S2. Similar to Figure S1, but showing the distribution of the 2nd variable (Female labour force participation). 63
Figure S3. Similar to Figure S1, but showing the distribution of the 3rd variable (Age). 64
Figure S4. Similar to Figure S1, but showing the distribution of the 4th variable (Senior). 65
Figure S5. Similar to Figure S1, but showing the distribution of the 5th variable (Children under 5 years of age). 66
Figure S6. Similar to Figure S1, but showing the distribution of the 6th variable (Children under 15 years of age). 67
Figure S7. Similar to Figure S1, but showing the distribution of the 9th variable (Unattached one-person household). 68
Figure S8. Similar to Figure S1, but showing the distribution of the 11th variable (Lone parents). 69
Figure S9. Similar to Figure S1, but showing the distribution of the 12th variable (Couples with children). 70
Figure S10. Similar to Figure S1, but showing the distribution of the 13rd variable (Household size). 71
Figure S11. Similar to Figure S1, but showing the distribution of the 14th variable (Official language knowledge). 72
Figure S18. Similar to Figure S1, but showing the distribution of the 21st variable (White). 79
Figure S19. Similar to Figure S1, but showing the distribution of the 22nd variable (Black). 80
Figure S20. Similar to Figure S1, but showing the distribution of the 23rd variable (South Asian). 81
Figure S21. Similar to Figure S1, but showing the distribution of the 24th variable (Chinese). 82
Figure S22. Similar to Figure S1, but showing the distribution of the 25th variable (Filipino). 83
Figure S23. Similar to Figure S1, but showing the distribution of the 26th variable (Latin American). 84
Figure S24. Similar to Figure S1, but showing the distribution of the 27th variable (No certificate/diploma). 85
Figure S25. Similar to Figure S1, but showing the distribution of the 28th variable (Postsecondary certificate). 86
Figure S26. Similar to Figure S1, but showing the distribution of the 29th variable (Sheltercost-to-income ratio). 87
Figure S27. Similar to Figure S1, but showing the distribution of the 30th variable (Government transfer). 88
Figure S34. Similar to Figure S1, but showing the distribution of the 37th variable (Education, law, social community & govt service). 95
Figure S35. Similar to Figure S1, but showing the distribution of the 38th variable (Sales and service). 96
Figure S36. Similar to Figure S1, but showing the distribution of the 39th variable (Unemployed). 97
Figure S37. Similar to Figure S1, but showing the distribution of the 40th variable (Not in the labour force). 98
Figure S38. Similar to Figure S1, but showing the distribution of the 41st variable (House with major repair). 99
Figure S39. Similar to Figure S1, but showing the distribution of the 42nd variable (Crowded home). 100
Figure S40. Similar to Figure S1, but showing the distribution of the 43rd variable (Period of home construction). 101
Figure S41. Similar to Figure S1, but showing the distribution of the 44th variable (Dwelling is in apartment with 5+ stories built before 1980). 102
Figure S42. Similar to Figure S1, but showing the distribution of the 45th variable (Renters). 103
Figure S43. Similar to Figure S1, but showing the distribution of the 46th variable (No private vehicle/Public transit). 104