Running a K-Means Cluster Analysis

Interpretation

A k-means cluster analysis was conducted to identify underlying subgroups of national life expectancies based on their similarity of responses on seven national descriptor variables. Clustering variables included a twenty-one level categorical variable measuring polity, as well as quantitative variables measuring urban rate, income per person, female employment rate, internet use rate, suicide per 100th, alcohol consumption. All clustering variables were standardized to have a mean of 0 and a standard deviation of 1.

Data were randomly split into a training set that included 70% of the observations (N=40) and a test set that included 30% of the observations. A series of k-means cluster analyses were conducted on the training data specifying k=1-9 clusters, using Euclidean distance. The variance in the clustering variables that was accounted for by the clusters (r-square) was plotted for each of the nine cluster solutions in an elbow curve to provide guidance for choosing the number of clusters to interpret.

Figure 1. Elbow curve of r-square values for the nine cluster solutions
SASOutput1

The elbow curve was inconclusive, suggesting that the 3, 5 and 7-cluster solutions might be interpreted. The results below are for an interpretation of the 3-cluster solution.

Canonical discriminant analyses was used to reduce the 7 clustering variables down to a few variables that accounted for most of the variance in the clustering variables. A scatterplot of the first two canonical variables by cluster (Figure 2 shown below) indicated that the observations in clusters one through three were loosely spread with little clear definition, showing high within cluster variance. However, the clusters group distinct areas of spread of plots points along a line.

Figure 2. Plot of the first two canonical variables for the clustering variables by cluster.
SASOutput1b

The means on the clustering variables showed that, compared to the other clusters, those in cluster 2 had positive means on the variables urban rate (0.45), income per person (1.07) and polity score (0.46) compared to the other variables’ negative means. They had the highest means on female employment (0.49) and internet use rate (1.01); and the lowest means on alcohol consumption rate (0.16) and suicide per 100th (0.09).

In order to externally validate the clusters, an Analysis of Variance (ANOVA) was conducting to test for significant differences between the clusters on life expectancy (lifeexpectancy). A tukey test was used for post hoc comparisons between the clusters. Results indicated significant differences between the clusters on life expectancy (F=10.32, p=<0.0003, r-square=0.36). The tukey post hoc comparisons showed significant differences between cluster 2 on life expectancy (mean=80.08, sd=2.12), and clusters 1 (mean=72.74, sd=4.59) and 3 (mean=72.38, sd=6.58), which were not significantly different from each other.

Syntax

libname mydata "/courses/d1406ae5ba27fe300" access=readonly;
/*DATA MANAGEMENT*/
data clust; set mydata.gapminder;
/*create a unique identifier for each observation to merge cluster assignment variable with the main data set, and include test var (gpa1)*/
urbanrate=_n_;
keep urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore lifeexpectancy;
/*delete observations with missing data*/
 if cmiss(of _all_) then delete;
 run;
ods graphics on;
/*Split data randomly into test and training data*/
proc surveyselect data=clust out=traintest seed = 123 samprate=0.7 method=srs outall;
run;   
data clus_train; set traintest;
if selected=1; /*training*/
run;
data clus_test;
set traintest;
if selected=0; /* test */
run;
/*standardize the clustering variables to have a mean of 0 and standard deviation of 1*/
proc standard data=clus_train out=clustvar mean=0 std=1; 
var urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore; 
run; 
%macro kmean(K); /*because we don't know how many clusters there are, this macro automates for a number of values of K*/
proc fastclus data=clustvar out=outdata&K. outstat=cluststat&K. maxclusters= &K. maxiter=300; /*for a range of values of K (contains a variable for cluster assignment for each observation and the distance of each observation from the cluster centroid), cluster analysis statistics, maxclusters asks to run specifying the max number of clusters, up to 300 iterations*/
var urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore;
run;
%mend;  /*stops running the macro*/
%kmean(1); /*prints the output data sets to work out how many*/
%kmean(2);
%kmean(3);
%kmean(4);
%kmean(5);
%kmean(6);
%kmean(7);
%kmean(8);
%kmean(9);
/*extract r-square values from each cluster solution and then merge them to plot elbow curve*/
data clus1;
set cluststat1; 
nclust=1; /* new variable identifies the value of K for the r-square*/
if _type_='RSQ'; /* quotes are for a string variable */
keep nclust over_all; /*this contains the actual r-square value*/
run;

data clus2;
set cluststat2;
nclust=2;
if _type_='RSQ';
keep nclust over_all;
run;
data clus3;
set cluststat3;
nclust=3;
if _type_='RSQ';
keep nclust over_all;
run;
data clus4;
set cluststat4;
nclust=4;
if _type_='RSQ';
keep nclust over_all;
run;
data clus5;
set cluststat5;
nclust=5;
if _type_='RSQ';
keep nclust over_all;
run;
data clus6;
set cluststat6;
nclust=6;
if _type_='RSQ';
keep nclust over_all;
run;
data clus7;
set cluststat7;
nclust=7;
if _type_='RSQ';
keep nclust over_all;
run;
data clus8;
set cluststat8;
nclust=8;
if _type_='RSQ';
keep nclust over_all;
run;
data clus9;
set cluststat9;
nclust=9;
if _type_='RSQ';
keep nclust over_all;
run;
data clusrsquare; /* creates new data set of r-square values*/
set clus1 clus2 clus3 clus4 clus5 clus6 clus7 clus8 clus9;
run;
/* plot elbow curve using r-square values */
symbol1 color=blue interpol=join; /*interpol=join joins the cluster points with a line*/
proc gplot data=clusrsquare;
 plot over_all*nclust; /* y to x axis */
 run;
/* plot check point: further examine cluster solution for the number of clusters suggested by the elbow curve */
/* plot clusters for 3 cluster solution identified in p-dimensional space with Canonical Discriminant Analysis*/
proc candisc data=outdata3 out=clustcan;
class cluster; /* specifies the cluster assignment variable called cluster as a categorical variable because it has three categories */
var urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore;
run;
proc sgplot data=clustcan;
scatter y=can2 x=can1 / group=cluster; /* group by assignment in cluster analysis*/
run;
/*validate clusters on lifeexpectancy*/
/*first merge clustering variable and assignment data with lifeexpectancy data*/
data lifeexpectancy_data;
set mydata.gapminder;
keep urbanrate lifeexpectancy;
run;
proc sort data=outdata3;
by urbanrate;
run;
proc sort data=lifeexpectancy_data;
by urbanrate;
run;
data merged;
merge outdata3 lifeexpectancy_data;
by urbanrate;
run;
proc sort data=merged;
by cluster;
run;
proc means data=merged;
var lifeexpectancy;
by cluster;
run;
proc anova data=merged;
class cluster; /*categorical variable*/
model lifeexpectancy = cluster; /* RESPONSE_VAR = EXPLAN_VAR*/
means cluster/tukey; /*tukey post hoc as there are four variables/ clusters*/
run;

Output

Results: ClusterAnalysis.sas

/* table, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c section > pre, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c div > table,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c div > pre, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c article > table, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c article > pre,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j section > table, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j section > pre, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j div > table,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j div > pre, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j article > table, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j article > pre,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c p.note, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c p.warning, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c p.error, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c p.fatal,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j p.note, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j p.warning, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j p.error, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j p.fatal,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body.c > table.layoutcontainer, .ods_d6642c61-9641-4a1c-b553-f25883906761 .body.j > table.layoutcontainer { margin-left: auto; margin-right: auto }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.l table, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.l pre, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.l p.note,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.l p.warning, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.l p.error, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.l p.fatal { margin-left: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.c table, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.c pre, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.c p.note,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.c p.warning, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.c p.error, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.c p.fatal { margin-left: auto; margin-right: auto }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r table, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r pre, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r p.note,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r table, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r pre, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r p.note,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r p.warning, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r p.error, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion.r p.fatal { margin-right: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 article, .ods_d6642c61-9641-4a1c-b553-f25883906761 aside, .ods_d6642c61-9641-4a1c-b553-f25883906761 details, .ods_d6642c61-9641-4a1c-b553-f25883906761 figcaption, .ods_d6642c61-9641-4a1c-b553-f25883906761 figure, .ods_d6642c61-9641-4a1c-b553-f25883906761 footer, .ods_d6642c61-9641-4a1c-b553-f25883906761 header, .ods_d6642c61-9641-4a1c-b553-f25883906761 hgroup, .ods_d6642c61-9641-4a1c-b553-f25883906761 nav, .ods_d6642c61-9641-4a1c-b553-f25883906761 section { display: block }
html.ods_d6642c61-9641-4a1c-b553-f25883906761 { font-size: 100% }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body { margin: 1em; font-size: 13px; line-height: 1.231 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 sup { position: relative; vertical-align: baseline; bottom: 0.25em; font-size: 0.8em }
.ods_d6642c61-9641-4a1c-b553-f25883906761 sub { position: relative; vertical-align: baseline; top: 0.25em; font-size: 0.8em }
.ods_d6642c61-9641-4a1c-b553-f25883906761 ul, .ods_d6642c61-9641-4a1c-b553-f25883906761 ol { margin: 1em 0; padding: 0 0 0 40px }
.ods_d6642c61-9641-4a1c-b553-f25883906761 dd { margin: 0 0 0 40px }
.ods_d6642c61-9641-4a1c-b553-f25883906761 nav ul, .ods_d6642c61-9641-4a1c-b553-f25883906761 nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 img { border: 0; vertical-align: middle }
.ods_d6642c61-9641-4a1c-b553-f25883906761 svg:not(:root) { overflow: hidden }
.ods_d6642c61-9641-4a1c-b553-f25883906761 figure { margin: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 table { border-collapse: collapse; border-spacing: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutcontainer { border-collapse: separate; border-spacing: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 p { margin-top: 0; text-align: left }
.ods_d6642c61-9641-4a1c-b553-f25883906761 span { text-align: left }
.ods_d6642c61-9641-4a1c-b553-f25883906761 table { margin-bottom: 1em }
.ods_d6642c61-9641-4a1c-b553-f25883906761 td, .ods_d6642c61-9641-4a1c-b553-f25883906761 th { text-align: left; padding: 3px 6px; vertical-align: top }
.ods_d6642c61-9641-4a1c-b553-f25883906761 td[class$=”fixed”], .ods_d6642c61-9641-4a1c-b553-f25883906761 th[class$=”fixed”] { white-space: pre }
.ods_d6642c61-9641-4a1c-b553-f25883906761 section, .ods_d6642c61-9641-4a1c-b553-f25883906761 article { padding-top: 1px; padding-bottom: 8px }
.ods_d6642c61-9641-4a1c-b553-f25883906761 hr.pagebreak { height: 0px; border: 0; border-bottom: 1px solid #c0c0c0; margin: 1em 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .stacked-value { text-align: left; display: block }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .stacked-cell > .stacked-value, .ods_d6642c61-9641-4a1c-b553-f25883906761 td.data > td.data, .ods_d6642c61-9641-4a1c-b553-f25883906761 th.data > td.data, .ods_d6642c61-9641-4a1c-b553-f25883906761 th.data > th.data, .ods_d6642c61-9641-4a1c-b553-f25883906761 td.data > th.data, .ods_d6642c61-9641-4a1c-b553-f25883906761 th.header > th.header { border: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .stacked-cell > div.data { border-width: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer { white-space: nowrap; margin-bottom: 1em }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > p { margin: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > p > span { display: inline-block; width: 100%; white-space: normal }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .batch { display: table }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .toc { display: none }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .proc_note_group, .ods_d6642c61-9641-4a1c-b553-f25883906761 .proc_title_group { margin-bottom: 1em }
.ods_d6642c61-9641-4a1c-b553-f25883906761 p.proctitle { margin: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 p.note, .ods_d6642c61-9641-4a1c-b553-f25883906761 p.warning, .ods_d6642c61-9641-4a1c-b553-f25883906761 p.error, .ods_d6642c61-9641-4a1c-b553-f25883906761 p.fatal { display: table }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .notebanner, .ods_d6642c61-9641-4a1c-b553-f25883906761 .warnbanner, .ods_d6642c61-9641-4a1c-b553-f25883906761 .errorbanner, .ods_d6642c61-9641-4a1c-b553-f25883906761 .fatalbanner,
.ods_d6642c61-9641-4a1c-b553-f25883906761 .notecontent, .ods_d6642c61-9641-4a1c-b553-f25883906761 .warncontent, .ods_d6642c61-9641-4a1c-b553-f25883906761 .errorcontent, .ods_d6642c61-9641-4a1c-b553-f25883906761 .fatalcontent { display: table-cell; padding: 0.5em }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .notebanner, .ods_d6642c61-9641-4a1c-b553-f25883906761 .warnbanner, .ods_d6642c61-9641-4a1c-b553-f25883906761 .errorbanner, .ods_d6642c61-9641-4a1c-b553-f25883906761 .fatalbanner { padding-right: 0 }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body > div > ol li { text-align: left }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .c { text-align: center }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .r { text-align: right }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .l { text-align: left }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .j { text-align: justify }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .d { text-align: right }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .b { vertical-align: bottom }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .m { vertical-align: middle }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .t { vertical-align: top }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .aftercaption {
background-color: #fafbfe;
border-spacing: 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
padding-top: 4pt;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .batch > colgroup {
border-left: 1px solid #c1c1c1;
border-right: 1px solid #c1c1c1;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .batch > tbody, .ods_d6642c61-9641-4a1c-b553-f25883906761 .batch > thead, .ods_d6642c61-9641-4a1c-b553-f25883906761 .batch > tfoot {
border-top: 1px solid #c1c1c1;
border-bottom: 1px solid #c1c1c1;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .batch { border: hidden; }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .batch {
background-color: #fafbfe;
border: 1px solid #c1c1c1;
border-collapse: separate;
border-spacing: 1px;
color: #000000;
font-family: ‘SAS Monospace’, ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: normal;
font-weight: normal;
padding: 7px;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .beforecaption {
background-color: #fafbfe;
border-spacing: 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .body {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
margin-left: 8px;
margin-right: 8px;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .bodydate {
background-color: #fafbfe;
border-spacing: 0;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
text-align: right;
vertical-align: top;
width: 100%;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .bycontentfolder {
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: none;
margin-left: 6pt;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .byline {
background-color: #fafbfe;
border-spacing: 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer > colgroup > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer > colgroup, .ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer > * > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer > thead, .ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer > tbody, .ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer > tfoot { border: none; }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .bylinecontainer {
background-color: #fafbfe;
border: none;
border-spacing: 1px;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
width: 100%;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .caption {
background-color: #fafbfe;
border-spacing: 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .cell, .ods_d6642c61-9641-4a1c-b553-f25883906761 .container {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .contentfolder, .ods_d6642c61-9641-4a1c-b553-f25883906761 .contentitem {
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: none;
margin-left: 6pt;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .contentproclabel, .ods_d6642c61-9641-4a1c-b553-f25883906761 .contentprocname {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .contents {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: decimal;
margin-left: 8px;
margin-right: 8px;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .contentsdate {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
width: 100%;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .contenttitle {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: italic;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .continued {
background-color: #fafbfe;
border-spacing: 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
width: 100%;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .data, .ods_d6642c61-9641-4a1c-b553-f25883906761 .dataemphasis {
background-color: #ffffff;
border-color: #c1c1c1;
border-style: solid;
border-width: 0 1px 1px 0;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .dataemphasisfixed {
background-color: #ffffff;
border-color: #c1c1c1;
border-style: solid;
border-width: 0 1px 1px 0;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .dataempty {
background-color: #ffffff;
border-color: #c1c1c1;
border-style: solid;
border-width: 0 1px 1px 0;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .datafixed {
background-color: #ffffff;
border-color: #c1c1c1;
border-style: solid;
border-width: 0 1px 1px 0;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .datastrong {
background-color: #ffffff;
border-color: #c1c1c1;
border-style: solid;
border-width: 0 1px 1px 0;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .datastrongfixed {
background-color: #ffffff;
border-color: #c1c1c1;
border-style: solid;
border-width: 0 1px 1px 0;
color: #000000;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .date {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
width: 100%;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .document {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .errorbanner {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .errorcontent {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .errorcontentfixed {
background-color: #fafbfe;
color: #112277;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .extendedpage {
background-color: #fafbfe;
border-style: solid;
border-width: 1pt;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: italic;
font-weight: normal;
text-align: center;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .fatalbanner {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .fatalcontent {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .fatalcontentfixed {
background-color: #fafbfe;
color: #112277;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .folderaction {
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: none;
margin-left: 6pt;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .footer {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .footeremphasis {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .footeremphasisfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .footerempty {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .footerfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .footerstrong {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .footerstrongfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .frame {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .graph > colgroup {
border-left: 1px solid #c1c1c1;
border-right: 1px solid #c1c1c1;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .graph > tbody, .ods_d6642c61-9641-4a1c-b553-f25883906761 .graph > thead, .ods_d6642c61-9641-4a1c-b553-f25883906761 .graph > tfoot {
border-top: 1px solid #c1c1c1;
border-bottom: 1px solid #c1c1c1;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .graph { border: hidden; }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .graph {
background-color: #fafbfe;
border: 1px solid #c1c1c1;
border-collapse: separate;
border-spacing: 1px;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .header {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .headeremphasis {
background-color: #d8dbd3;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .headeremphasisfixed {
background-color: #d8dbd3;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #000000;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .headerempty {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .headerfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .headersandfooters {
background-color: #edf2f9;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .headerstrong {
background-color: #d8dbd3;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .headerstrongfixed {
background-color: #d8dbd3;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #000000;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .index {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .indexaction, .ods_d6642c61-9641-4a1c-b553-f25883906761 .indexitem {
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: none;
margin-left: 6pt;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .indexprocname {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .indextitle {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: italic;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutcontainer, .ods_d6642c61-9641-4a1c-b553-f25883906761 .layoutregion {
border-width: 0;
border-spacing: 30px;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .linecontent {
background-color: #fafbfe;
border-color: #c1c1c1;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .list {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: disc;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .list10 {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: square;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .list2 {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: circle;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .list3, .ods_d6642c61-9641-4a1c-b553-f25883906761 .list4, .ods_d6642c61-9641-4a1c-b553-f25883906761 .list5, .ods_d6642c61-9641-4a1c-b553-f25883906761 .list6, .ods_d6642c61-9641-4a1c-b553-f25883906761 .list7, .ods_d6642c61-9641-4a1c-b553-f25883906761 .list8, .ods_d6642c61-9641-4a1c-b553-f25883906761 .list9 {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: square;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: disc;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem10 {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: square;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem2 {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: circle;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem3, .ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem4, .ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem5, .ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem6, .ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem7, .ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem8, .ods_d6642c61-9641-4a1c-b553-f25883906761 .listitem9 {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: square;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .note {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .notebanner {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .notecontent {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .notecontentfixed {
background-color: #fafbfe;
color: #112277;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .output > colgroup {
border-left: 1px solid #c1c1c1;
border-right: 1px solid #c1c1c1;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .output > tbody, .ods_d6642c61-9641-4a1c-b553-f25883906761 .output > thead, .ods_d6642c61-9641-4a1c-b553-f25883906761 .output > tfoot {
border-top: 1px solid #c1c1c1;
border-bottom: 1px solid #c1c1c1;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .output { border: hidden; }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .output {
background-color: #fafbfe;
border: 1px solid #c1c1c1;
border-collapse: separate;
border-spacing: 1px;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .pageno {
background-color: #fafbfe;
border-spacing: 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
text-align: right;
vertical-align: top;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .pages {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: decimal;
margin-left: 8px;
margin-right: 8px;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .pagesdate {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
width: 100%;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .pagesitem {
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
list-style-type: none;
margin-left: 6pt;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .pagesproclabel, .ods_d6642c61-9641-4a1c-b553-f25883906761 .pagesprocname {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .pagestitle {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: italic;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .paragraph {
background-color: #fafbfe;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip > colgroup > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip > colgroup, .ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip > * > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip > thead, .ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip > tbody, .ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip > tfoot { border: none; }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .parskip {
border: none;
border-spacing: 0;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .prepage {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
text-align: left;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .proctitle {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .proctitlefixed {
background-color: #fafbfe;
color: #112277;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowfooter {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowfooteremphasis {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowfooteremphasisfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowfooterempty {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowfooterfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowfooterstrong {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowfooterstrongfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowheader {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowheaderemphasis {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowheaderemphasisfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: italic;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowheaderempty {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowheaderfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowheaderstrong {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .rowheaderstrongfixed {
background-color: #edf2f9;
border-color: #b0b7bb;
border-style: solid;
border-width: 0 1px 1px 0;
color: #112277;
font-family: ‘Courier New’, Courier, monospace;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter10, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter2, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter3, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter4, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter5, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter6, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter7, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter8, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemfooter9 {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle10, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle2, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle3, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle4, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle5, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle6, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle7, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle8, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systemtitle9 {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > colgroup > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > colgroup, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > * > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > thead, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > tbody, .ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer > tfoot { border: none; }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .systitleandfootercontainer {
background-color: #fafbfe;
border: none;
border-spacing: 1px;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
width: 100%;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .table > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .table > colgroup > col {
border-left: 1px solid #c1c1c1;
border-right: 0 solid #c1c1c1;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .table > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .table > * > tr {
border-top: 1px solid #c1c1c1;
border-bottom: 0 solid #c1c1c1;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .table { border: hidden; }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .table {
border-color: #c1c1c1;
border-style: solid;
border-width: 1px 0 0 1px;
border-collapse: collapse;
border-spacing: 0;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer > colgroup > col, .ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer > colgroup, .ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer > * > tr, .ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer > thead, .ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer > tbody, .ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer > tfoot { border: none; }
.ods_d6642c61-9641-4a1c-b553-f25883906761 .titleandnotecontainer {
background-color: #fafbfe;
border: none;
border-spacing: 1px;
color: #000000;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
width: 100%;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .titlesandfooters {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .usertext {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .warnbanner {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: bold;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .warncontent {
background-color: #fafbfe;
color: #112277;
font-family: Arial, ‘Albany AMT’, Helvetica, Helv;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
.ods_d6642c61-9641-4a1c-b553-f25883906761 .warncontentfixed {
background-color: #fafbfe;
color: #112277;
font-family: ‘Courier New’, Courier;
font-size: x-small;
font-style: normal;
font-weight: normal;
}
/*]]>*/

Results: ClusterAnalysis.sas

The SURVEYSELECT Procedure

The SURVEYSELECT Procedure

Sample Selection Method

Selection Method Simple Random Sampling

Sample Selection Summary

Input Data Set CLUST
Random Number Seed 123
Sampling Rate 0.7
Sample Size 40
Selection Probability 0.714286
Sampling Weight 0
Output Data Set TRAINTEST

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=1 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -1.807729104 -0.798972306 -1.372614751 -1.482052830 -0.873703900 -1.666134475 -0.890631800

Criterion

Criterion Based on Final Seeds = 0.9874

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 40 1.0000 4.1831   . .

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 1.00000 0.000000 0.000000
incomeperperson 1.00000 1.00000 0.000000 0.000000
femaleemployrate 1.00000 1.00000 0.000000 0.000000
internetuserate 1.00000 1.00000 0.000000 0.000000
suicideper100th 1.00000 1.00000 0.000000 0.000000
alcconsumption 1.00000 1.00000 0.000000 0.000000
polityscore 1.00000 1.00000 0.000000 0.000000
OVER-ALL 1.00000 1.00000 0.000000 0.000000

Pseudo F Statistic

Pseudo F Statistic = .

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = 0.00000

Cubic Clustering Criterion

Cubic Clustering Criterion = 0.000

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0 1.554312E-16 1.570966E-15 -2.38698E-16 -1.4086E-16 -2.35055E-16 -1.11022E-17

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 1.000000000 1.000000000 1.000000000 1.000000000 1.000000000 1.000000000 1.000000000

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=2 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.562515889 2.286179427 1.323222146 1.571299255 -0.093959904 -0.230320657 0.641637963
2 -0.372228615 -0.804731105 -1.815766116 -1.463151633 -0.720591735 -1.602403836 -2.614435283

Minimum Distance

Minimum Distance Between Initial Seeds = 6.50891

Iteration History

Iteration History
Iteration Criterion Relative Change in Cluster Seeds
1 2
1 1.2827 0.3753 0.4049
2 0.8569 0.0291 0.0356
3 0.8501 0.0300 0.0299
4 0.8468 0 0

Convergence Status

Convergence criterion is satisfied.

Criterion

Criterion Based on Final Seeds = 0.8468

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 21 0.7756 3.2219   2 2.6903
2 19 0.9619 4.1109   1 2.6903

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 0.96581 0.091125 0.100262
incomeperperson 1.00000 0.76333 0.432263 0.761380
femaleemployrate 1.00000 0.96308 0.096259 0.106512
internetuserate 1.00000 0.57350 0.679532 2.120438
suicideper100th 1.00000 0.97524 0.073295 0.079092
alcconsumption 1.00000 0.86191 0.276155 0.381511
polityscore 1.00000 0.90465 0.202587 0.254056
OVER-ALL 1.00000 0.86885 0.264460 0.359545

Pseudo F Statistic

Pseudo F Statistic = 13.66

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = 0.15582

Cubic Clustering Criterion

Cubic Clustering Criterion = 5.690

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.2835232694 0.6175094273 0.2914005244 0.7742379697 0.2542770357 0.4935665788 0.4227422827
2 -.3133678240 -.6825104197 -.3220742638 -.8557367033 -.2810430394 -.5455209555 -.4672414704

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.838758266 1.026572068 0.607054992 0.578641220 0.940217825 0.753581848 0.546075079
2 1.089745348 0.243211278 1.244444998 0.567731004 1.012732749 0.968166982 1.181692081

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=3 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -1.574042978 -0.757634851 0.187646763 -0.742993020 2.001073000 1.737831445 -2.614435283
2 0.562515889 2.286179427 1.323222146 1.571299255 -0.093959904 -0.230320657 0.641637963
3 0.595899622 -0.926778886 -2.545119194 -1.320272053 0.173186074 -1.786098032 -0.316030639

Minimum Distance

Minimum Distance Between Initial Seeds = 5.794863

Iteration History

Iteration History
Iteration Criterion Relative Change in Cluster Seeds
1 2 3
1 1.1294 0.3953 0.3511 0.3875
2 0.7740 0.0466 0.0564 0.0619
3 0.7631 0 0.0284 0.0244
4 0.7612 0 0.0245 0.0189
5 0.7601 0 0 0

Convergence Status

Convergence criterion is satisfied.

Criterion

Criterion Based on Final Seeds = 0.7601

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 8 0.9124 3.4610   2 2.9727
2 14 0.6582 2.8540   3 2.9367
3 18 0.8278 3.1469   2 2.9367

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 0.95360 0.137274 0.159117
incomeperperson 1.00000 0.62080 0.634377 1.735055
femaleemployrate 1.00000 0.89629 0.237857 0.312089
internetuserate 1.00000 0.56970 0.692090 2.247700
suicideper100th 1.00000 0.76638 0.442776 0.794609
alcconsumption 1.00000 0.72509 0.501205 1.004831
polityscore 1.00000 0.91435 0.206842 0.260783
OVER-ALL 1.00000 0.79028 0.407489 0.687731

Pseudo F Statistic

Pseudo F Statistic = 12.72

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = 0.26971

Cubic Clustering Criterion

Cubic Clustering Criterion = 6.343

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -0.537060793 -0.519484879 0.334209906 0.098957061 1.263863895 1.193309363 -0.794864939
2 0.449249655 1.070943904 0.489016103 1.014753655 -0.087886082 0.163443652 0.463785223
3 -0.110722712 -0.602074201 -0.528883594 -0.833233759 -0.493361445 -0.657482557 -0.007448534

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.837042821 0.384606804 0.525847222 0.685519741 1.319247142 0.498373993 1.497676823
2 0.889059397 0.908313977 0.547888598 0.426770636 0.413458285 0.623235954 0.612467061
3 1.042233744 0.383360472 1.185342393 0.611228504 0.656485192 0.863129489 0.780475238

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=4 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.595899622 -0.926778886 -2.545119194 -1.320272053 0.173186074 -1.786098032 -0.316030639
2 -1.657502309 -0.789742805 0.889303134 -0.190077668 -1.326314529 0.705020199 -2.614435283
3 0.562515889 2.286179427 1.323222146 1.571299255 -0.093959904 -0.230320657 0.641637963
4 -0.005007560 -0.545537332 0.206111469 0.419712454 2.845154407 1.259851649 0.641637963

Minimum Distance

Minimum Distance Between Initial Seeds = 4.66624

Iteration History

Iteration History
Iteration Criterion Relative Change in Cluster Seeds
1 2 3 4
1 1.0138 0.4290 0.4703 0.3665 0.3842
2 0.7176 0.0445 0 0.0419 0
3 0.7149 0 0 0 0

Convergence Status

Convergence criterion is satisfied.

Criterion

Criterion Based on Final Seeds = 0.7149

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 13 0.8135 2.8599   2 2.6406
2 6 0.9618 2.9238   1 2.6406
3 14 0.6578 2.8111   4 2.4958
4 7 0.6127 1.8147   3 2.4958

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 0.95846 0.152016 0.179268
incomeperperson 1.00000 0.54017 0.730663 2.712824
femaleemployrate 1.00000 0.77602 0.444117 0.798941
internetuserate 1.00000 0.52887 0.741812 2.873153
suicideper100th 1.00000 0.87299 0.296520 0.421505
alcconsumption 1.00000 0.65583 0.602968 1.518688
polityscore 1.00000 0.83107 0.362446 0.568494
OVER-ALL 1.00000 0.75359 0.475792 0.907639

Pseudo F Statistic

Pseudo F Statistic = 10.89

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = 0.36454

Cubic Clustering Criterion

Cubic Clustering Criterion = 4.988

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -0.092318860 -0.659053361 -0.874069714 -0.960549618 -0.450262182 -0.935250739 -0.080296829
2 -0.792307247 -0.733334047 0.873915879 -0.628642054 0.085598437 0.298893575 -1.305621527
3 0.376520809 1.143386264 0.447470677 0.991180189 -0.169059037 0.100382452 0.463785223
4 0.097528189 -0.434244245 -0.020739781 0.340353532 1.100949181 1.279934833 0.340656403

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 1.026134737 0.291088534 1.082473655 0.633610287 0.747834785 0.764582146 0.881727467
2 1.160074690 0.071118725 0.504211968 0.326172447 1.454056561 0.849051807 1.388674510
3 0.907305943 0.813723887 0.636405514 0.469871589 0.447260979 0.585480383 0.612467061
4 0.707744873 0.377303613 0.424681857 0.555232277 1.121953365 0.260940472 0.411643692

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=5 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.595899622 -0.926778886 -2.545119194 -1.320272053 0.173186074 -1.786098032 -0.316030639
2 -1.657502309 -0.789742805 0.889303134 -0.190077668 -1.326314529 0.705020199 -2.614435283
3 1.330341732 -0.759691042 1.701747039 -1.153196652 -0.221285363 -0.468373339 -0.507564359
4 -0.005007560 -0.545537332 0.206111469 0.419712454 2.845154407 1.259851649 0.641637963
5 0.562515889 2.286179427 1.323222146 1.571299255 -0.093959904 -0.230320657 0.641637963

Minimum Distance

Minimum Distance Between Initial Seeds = 4.189585

Iteration History

Iteration History
Iteration Criterion Relative Change in Cluster Seeds
1 2 3 4 5
1 0.9285 0.4112 0.3926 0.4185 0.3777 0.3604
2 0.6771 0 0.3202 0.1067 0 0
3 0.6556 0.0637 0 0.0461 0 0
4 0.6518 0.0686 0 0.0735 0 0.0422
5 0.6457 0.0734 0 0.0333 0 0
6 0.6434 0 0 0 0 0

Convergence Status

Convergence criterion is satisfied.

Criterion

Criterion Based on Final Seeds = 0.6434

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 6 0.8013 2.2928   3 2.4158
2 3 0.8458 2.2564   4 3.4061
3 13 0.6896 2.8063   1 2.4158
4 6 0.5933 1.7939   5 2.6938
5 12 0.6362 2.7563   3 2.6389

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 0.96677 0.161219 0.192207
incomeperperson 1.00000 0.53029 0.747635 2.962518
femaleemployrate 1.00000 0.65757 0.611956 1.577024
internetuserate 1.00000 0.43515 0.830066 4.884644
suicideper100th 1.00000 0.77379 0.462664 0.861034
alcconsumption 1.00000 0.68187 0.582744 1.396609
polityscore 1.00000 0.64079 0.631502 1.713720
OVER-ALL 1.00000 0.68784 0.575398 1.355147

Pseudo F Statistic

Pseudo F Statistic = 11.86

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = 0.44460

Cubic Clustering Criterion

Cubic Clustering Criterion = 6.336

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.095143637 -0.777839751 -1.743446280 -1.312365229 -0.166523759 -1.244387596 -0.475642072
2 -1.156746324 -0.775311903 0.716966463 -0.541930293 0.827986125 0.909333132 -2.550590709
3 -0.141110468 -0.476278892 0.101005086 -0.549245122 -0.639937617 -0.273865121 0.258570522
4 -0.018917448 -0.378971340 0.018387660 0.470713774 1.316713013 1.287968107 0.322415096
5 0.403943161 1.288202321 0.573865518 1.151323849 -0.088825406 0.047563676 0.434143099

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 1.199586716 0.146878689 0.570148259 0.437257827 0.821200910 0.697630727 1.164529220
2 0.796151273 0.016298260 0.467608895 0.305748330 1.868144079 0.747582978 0.110582045
3 0.987876623 0.441279293 0.869077310 0.550528504 0.503117829 0.836637464 0.383067441
4 0.697984842 0.381007650 0.451182424 0.476646199 1.058055462 0.284896182 0.447823151
5 0.958359472 0.778767457 0.521335645 0.254334307 0.423124622 0.596688654 0.660763997

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=6 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -0.005007560 -0.545537332 0.206111469 0.419712454 2.845154407 1.259851649 0.641637963
2 -1.657502309 -0.789742805 0.889303134 -0.190077668 -1.326314529 0.705020199 -2.614435283
3 1.330341732 -0.759691042 1.701747039 -1.153196652 -0.221285363 -0.468373339 -0.507564359
4 -1.574042978 -0.757634851 0.187646763 -0.742993020 2.001073000 1.737831445 -2.614435283
5 0.595899622 -0.926778886 -2.545119194 -1.320272053 0.173186074 -1.786098032 -0.316030639
6 0.562515889 2.286179427 1.323222146 1.571299255 -0.093959904 -0.230320657 0.641637963

Minimum Distance

Minimum Distance Between Initial Seeds = 3.59781

Iteration History

Iteration History
Iteration Criterion Relative Change in Cluster Seeds
1 2 3 4 5 6
1 0.8900 0.4399 0.4178 0.5213 0.3031 0.4789 0.4197
2 0.6405 0 0 0.0625 0 0.0742 0
3 0.6368 0 0 0.0570 0 0 0.0491
4 0.6332 0 0 0.0855 0 0.1069 0
5 0.6272 0 0 0 0 0 0

Convergence Status

Convergence criterion is satisfied.

Criterion

Criterion Based on Final Seeds = 0.6272

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 6 0.5933 1.7939   3 2.6325
2 2 0.8035 1.5033   3 2.4549
3 10 0.6374 2.4511   5 2.2527
4 2 0.5828 1.0903   1 3.3498
5 8 0.8349 2.5987   3 2.2527
6 12 0.6362 2.7563   3 2.5393

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 0.94585 0.220067 0.282161
incomeperperson 1.00000 0.53295 0.752380 3.038441
femaleemployrate 1.00000 0.77203 0.480390 0.924521
internetuserate 1.00000 0.44222 0.829510 4.865438
suicideper100th 1.00000 0.62315 0.661470 1.953949
alcconsumption 1.00000 0.59158 0.694901 2.277628
polityscore 1.00000 0.72841 0.537438 1.161871
OVER-ALL 1.00000 0.68024 0.596594 1.478890

Pseudo F Statistic

Pseudo F Statistic = 10.06

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = 0.51312

Cubic Clustering Criterion

Cubic Clustering Criterion = 4.179

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -0.018917448 -0.378971340 0.018387660 0.470713774 1.316713013 1.287968107 0.322415096
2 -1.540659246 -0.693505858 0.755434454 -0.304035871 -1.104692371 0.399488016 -1.177932380
3 0.110166317 -0.410094864 0.036236841 -0.508106756 -0.739221558 -0.025820281 0.354337383
4 -0.906368332 -0.768096451 0.630798127 -0.717856605 1.905136451 1.011489598 -2.518668422
5 -0.117677656 -0.770055819 -1.266443218 -1.189414540 -0.130380723 -1.357790646 -0.411797499
6 0.403943161 1.288202321 0.573865518 1.151323849 -0.088825406 0.047563676 0.434143099

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.697984842 0.381007650 0.451182424 0.476646199 1.058055462 0.284896182 0.447823151
2 0.165241044 0.136099597 0.189318903 0.161161236 0.313421062 0.432087757 2.031521887
3 0.896175155 0.478481971 0.958741654 0.405382835 0.444101795 0.631054241 0.363970068
4 0.944234540 0.014794937 0.626710670 0.035548259 0.135674769 1.027202491 0.135434792
5 1.179070095 0.160732053 1.038953667 0.686123967 0.731358757 0.626862624 0.992602007
6 0.958359472 0.778767457 0.521335645 0.254334307 0.423124622 0.596688654 0.660763997

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=7 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -0.372228615 -0.804731105 -1.815766116 -1.463151633 -0.720591735 -1.602403836 -2.614435283
2 -1.657502309 -0.789742805 0.889303134 -0.190077668 -1.326314529 0.705020199 -2.614435283
3 -0.405612348 -0.917120331 -1.317220984 -1.671053594 0.918966814 -1.291248361 0.450104243
4 -1.574042978 -0.757634851 0.187646763 -0.742993020 2.001073000 1.737831445 -2.614435283
5 1.330341732 -0.759691042 1.701747039 -1.153196652 -0.221285363 -0.468373339 -0.507564359
6 0.562515889 2.286179427 1.323222146 1.571299255 -0.093959904 -0.230320657 0.641637963
7 -0.005007560 -0.545537332 0.206111469 0.419712454 2.845154407 1.259851649 0.641637963

Minimum Distance

Minimum Distance Between Initial Seeds = 3.532972

Iteration History

Iteration History
Iteration Criterion Relative Change in Cluster Seeds
1 2 3 4 5 6 7
1 0.8372 0.3245 0.4255 0.4804 0.3086 0.4942 0.3880 0.4480
2 0.6022 0 0.1557 0 0 0.1018 0 0
3 0.5960 0 0.1966 0.0902 0 0 0 0
4 0.5874 0 0 0 0 0 0 0

Convergence Status

Convergence criterion is satisfied.

Criterion

Criterion Based on Final Seeds = 0.5874

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 2 0.6127 1.1463   3 2.7825
2 4 0.7599 2.4160   5 2.5367
3 9 0.6885 2.1384   5 2.1518
4 2 0.5828 1.0903   7 3.3498
5 5 0.5811 1.6649   3 2.1518
6 12 0.6362 2.7563   7 2.6938
7 6 0.5933 1.7939   6 2.6938

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 0.79216 0.469021 0.883312
incomeperperson 1.00000 0.54546 0.748248 2.972168
femaleemployrate 1.00000 0.59169 0.703762 2.375661
internetuserate 1.00000 0.49306 0.794293 3.861279
suicideper100th 1.00000 0.67157 0.618382 1.620423
alcconsumption 1.00000 0.72185 0.559098 1.268077
polityscore 1.00000 0.66144 0.629804 1.701270
OVER-ALL 1.00000 0.64673 0.646087 1.825551

Pseudo F Statistic

Pseudo F Statistic = 10.04

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = 0.57236

Cubic Clustering Criterion

Cubic Clustering Criterion = 4.041

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -1.089978860 -0.801851706 -1.594190433 -1.472602232 -0.797147817 -1.634269155 -1.752533541
2 -1.469718815 -0.759982755 0.732353660 -0.749408534 -0.671109064 -0.381212318 -0.651214649
3 0.100707592 -0.429787638 -1.229001054 -0.664764100 -0.329721676 -0.652484076 0.301133571
4 -0.906368332 -0.768096451 0.630798127 -0.717856605 1.905136451 1.011489598 -2.518668422
5 0.846277614 -0.627336748 0.612333456 -0.655748025 -0.679683826 0.068838463 0.258570522
6 0.403943161 1.288202321 0.573865518 1.151323849 -0.088825406 0.047563676 0.434143099
7 -0.018917448 -0.378971340 0.018387660 0.470713774 1.316713013 1.287968107 0.322415096

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 1.015052130 0.004072086 0.313355335 0.013365165 0.108266651 0.045064367 1.218913132
2 0.211741218 0.141556946 0.122712386 0.727547976 0.739414419 1.056525582 1.330435741
3 0.852348207 0.486051413 0.732430516 0.685399540 0.744719430 0.817347798 0.355471541
4 0.944234540 0.014794937 0.626710670 0.035548259 0.135674769 1.027202491 0.135434792
5 0.274275349 0.343109822 0.824317292 0.454828357 0.549800590 0.883539648 0.449186390
6 0.958359472 0.778767457 0.521335645 0.254334307 0.423124622 0.596688654 0.660763997
7 0.697984842 0.381007650 0.451182424 0.476646199 1.058055462 0.284896182 0.447823151

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=8 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 1.046580008 1.678268064 0.436919416 0.734197571 -0.315251568 -1.506807877 -1.656766681
2 -1.657502309 -0.789742805 0.889303134 -0.190077668 -1.326314529 0.705020199 -2.614435283
3 -1.607426711 -0.935810681 0.649262658 -1.814691671 0.390960660 -1.763604865 -0.316030639
4 -1.574042978 -0.757634851 0.187646763 -0.742993020 2.001073000 1.737831445 -2.614435283
5 -0.005007560 -0.545537332 0.206111469 0.419712454 2.845154407 1.259851649 0.641637963
6 1.530644126 1.310216137 0.603101068 1.248271591 -0.721534473 0.686275893 0.641637963
7 1.330341732 -0.759691042 1.701747039 -1.153196652 -0.221285363 -0.468373339 -0.507564359
8 1.430492929 -0.544200069 -2.277382010 -0.449364696 -1.041477479 -1.229392152 0.067036802

Minimum Distance

Minimum Distance Between Initial Seeds = 3.304393

Iteration History

Iteration History
Iteration Criterion Relative Change in Cluster Seeds
1 2 3 4 5 6 7 8
1 0.8105 0 0 0.5166 0.3300 0.4249 0.4268 0.4513 0.5103
2 0.5840 0 0 0 0 0.0869 0.0949 0.0957 0
3 0.5776 0 0 0 0 0 0 0 0

Convergence Status

Convergence criterion is satisfied.

Criterion

Criterion Based on Final Seeds = 0.5776

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 1 . 0   6 3.0069
2 1 . 0   4 3.3846
3 6 0.6979 1.9926   8 1.9580
4 2 0.5828 1.0903   5 3.3498
5 6 0.5933 1.7939   6 2.6175
6 11 0.5717 1.9162   5 2.6175
7 5 0.5811 1.6649   8 2.2235
8 8 0.7739 2.8913   3 1.9580

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 0.75536 0.531838 1.136012
incomeperperson 1.00000 0.54949 0.752259 3.036466
femaleemployrate 1.00000 0.73353 0.558513 1.265073
internetuserate 1.00000 0.50344 0.792037 3.808550
suicideper100th 1.00000 0.66842 0.633410 1.727843
alcconsumption 1.00000 0.67362 0.627680 1.685864
polityscore 1.00000 0.59574 0.708799 2.434054
OVER-ALL 1.00000 0.64581 0.657791 1.922189

Pseudo F Statistic

Pseudo F Statistic = 8.79

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = 0.62401

Cubic Clustering Criterion

Cubic Clustering Criterion = 1.958

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 1.046580008 1.678268064 0.436919416 0.734197571 -0.315251568 -1.506807877 -1.656766681
2 -1.657502309 -0.789742805 0.889303134 -0.190077668 -1.326314529 0.705020199 -2.614435283
3 -1.276371365 -0.738319807 -0.278585162 -1.035705426 -0.248633807 -0.888558193 0.035114515
4 -0.906368332 -0.768096451 0.630798127 -0.717856605 1.905136451 1.011489598 -2.518668422
5 -0.018917448 -0.378971340 0.018387660 0.470713774 1.316713013 1.287968107 0.322415096
6 0.345521629 1.252741799 0.586315164 1.189244420 -0.068241210 0.188870181 0.624225807
7 0.846277614 -0.627336748 0.612333456 -0.655748025 -0.679683826 0.068838463 0.258570522
8 0.270408232 -0.411507690 -1.317220984 -0.690175660 -0.553513701 -0.754926913 -0.124496918

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 . . . . . . .
2 . . . . . . .
3 0.486236859 0.184632807 1.058037317 0.695037433 0.768323783 0.794965799 0.560597528
4 0.944234540 0.014794937 0.626710670 0.035548259 0.135674769 1.027202491 0.135434792
5 0.697984842 0.381007650 0.451182424 0.476646199 1.058055462 0.284896182 0.447823151
6 0.982469119 0.806553349 0.544907353 0.228414828 0.437429914 0.357868288 0.057749590
7 0.274275349 0.343109822 0.824317292 0.454828357 0.549800590 0.883539648 0.449186390
8 0.736336471 0.505574378 0.803825349 0.677045841 0.610271114 0.886112962 1.063954608

The FASTCLUS Procedure

Replace=FULL Radius=0 Maxclusters=9 Maxiter=300 Converge=0.02

The FASTCLUS Procedure

Initial Seeds

Initial Seeds
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 -0.272077418 2.231991640 -0.033928656 0.980152849 0.966358377 -0.335288769 0.641637963
2 -1.657502309 -0.789742805 0.889303134 -0.190077668 -1.326314529 0.705020199 -2.614435283
3 -1.607426711 -0.935810681 0.649262658 -1.814691671 0.390960660 -1.763604865 -0.316030639
4 -1.574042978 -0.757634851 0.187646763 -0.742993020 2.001073000 1.737831445 -2.614435283
5 0.595899622 -0.926778886 -2.545119194 -1.320272053 0.173186074 -1.786098032 -0.316030639
6 1.330341732 -0.759691042 1.701747039 -1.153196652 -0.221285363 -0.468373339 -0.507564359
7 1.063271874 -0.291036148 -0.117019658 1.065248830 -0.117095507 0.699396907 0.641637963
8 1.046580008 1.678268064 0.436919416 0.734197571 -0.315251568 -1.506807877 -1.656766681
9 -0.005007560 -0.545537332 0.206111469 0.419712454 2.845154407 1.259851649 0.641637963

Minimum Distance

Minimum Distance Between Initial Seeds = 3.226053

Iteration History

Iteration History
Iteration Criterion Relative Change in Cluster Seeds
1 2 3 4 5 6 7 8 9
1 0.7232 0.4263 0 0.4759 0.3380 0.3109 0.3895 0.3861 0 0.3310
2 0.5415 0.1091 0 0 0 0 0 0.1603 0 0
3 0.5284 0 0 0 0 0 0 0 0 0

Convergence Status

Convergence criterion is satisfied.

Criterion

Criterion Based on Final Seeds = 0.5284

Cluster Summary

Cluster Summary
Cluster Frequency RMS Std Deviation Maximum Distance
from Seed
to Observation
Radius
Exceeded
Nearest Cluster Distance Between
Cluster Centroids
1 10 0.5468 1.6860   7 2.3404
2 1 . 0   3 3.2350
3 4 0.6626 1.9125   7 2.5410
4 2 0.5828 1.0903   9 3.2486
5 5 0.7770 2.5239   7 2.7017
6 3 0.4769 1.2566   7 2.2751
7 10 0.5813 2.0732   6 2.2751
8 1 . 0   1 2.9834
9 4 0.5510 1.5124   7 2.5976

Statistics for Variables

Statistics for Variables
Variable Total STD Within STD R-Square RSQ/(1-RSQ)
urbanrate 1.00000 0.80476 0.485205 0.942519
incomeperperson 1.00000 0.44593 0.841936 5.326534
femaleemployrate 1.00000 0.61325 0.701073 2.345298
internetuserate 1.00000 0.46505 0.828090 4.816990
suicideper100th 1.00000 0.57816 0.734298 2.763618
alcconsumption 1.00000 0.66749 0.645847 1.823635
polityscore 1.00000 0.55094 0.758724 3.144639
OVER-ALL 1.00000 0.60026 0.713596 2.491572

Pseudo F Statistic

Pseudo F Statistic = 9.65

Approximate Expected Over-All R-Squared

Approximate Expected Over-All R-Squared = .

Cubic Clustering Criterion

Cubic Clustering Criterion = .

WARNING: The two values above are invalid for correlated variables.

Cluster Means

Cluster Means
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 0.273746605 1.407119594 0.656648646 1.201643979 -0.063355780 0.137817508 0.622484591
2 -1.657502309 -0.789742805 0.889303134 -0.190077668 -1.326314529 0.705020199 -2.614435283
3 -1.507275514 -0.762290130 0.166874188 -1.072402325 -0.557956407 -0.974000986 -0.220263778
4 -0.906368332 -0.768096451 0.630798127 -0.717856605 1.905136451 1.011489598 -2.518668422
5 0.475718185 -0.773613240 -1.817612586 -1.278427708 -0.025087731 -1.160038221 -0.392644127
6 0.901917168 -0.783157861 0.981626196 -0.940253970 -0.922319917 -0.565218919 0.067036802
7 0.043398852 -0.270491685 -0.410607395 0.060015746 -0.393019011 0.326572667 0.469257615
8 1.046580008 1.678268064 0.436919416 0.734197571 -0.315251568 -1.506807877 -1.656766681
9 0.049241005 -0.362977785 0.106864069 0.444376451 1.879816286 1.381689636 0.258570522

Cluster Standard Deviations

Cluster Standard Deviations
Cluster urbanrate incomeperperson femaleemployrate internetuserate suicideper100th alcconsumption polityscore
1 1.004753908 0.656904159 0.519090270 0.236835841 0.460775177 0.332331131 0.060568280
2 . . . . . . .
3 0.263216845 0.142277119 1.028326428 0.681810058 0.632649830 0.897082152 0.506750592
4 0.944234540 0.014794937 0.626710670 0.035548259 0.135674769 1.027202491 0.135434792
5 0.844087058 0.163806932 0.604219736 0.479952961 0.832425698 0.744982993 1.281988860
6 0.371120412 0.076210326 0.865477514 0.254768911 0.607357351 0.093877601 0.506750592
7 0.809185449 0.391622658 0.461221785 0.542844395 0.464786635 0.874555933 0.262462549
8 . . . . . . .
9 0.539567424 0.490100787 0.514772445 0.605658009 0.769992497 0.275267006 0.541739170

The GPLOT Procedure

Plot of OVER_ALL by nclust


The CANDISC Procedure

The CANDISC Procedure

Counts

Total Sample Size 40 DF Total 39
Variables 7 DF Within Classes 37
Classes 3 DF Between Classes 2

n Obs

Number of Observations Read 40
Number of Observations Used 40

Class Levels

Class Level Information
CLUSTER Variable
Name
Frequency Weight Proportion
1 1 8 8.0000 0.200000
2 2 14 14.0000 0.350000
3 3 18 18.0000 0.450000

The CANDISC Procedure

Multivariate Statistics

Multivariate Statistics and F Approximations
S=2 M=2 N=14.5
Statistic Value F Value Num DF Den DF Pr > F
NOTE: F Statistic for Roy's Greatest Root is an upper bound.
NOTE: F Statistic for Wilks' Lambda is exact.
Wilks' Lambda 0.04017501 17.67 14 62 <.0001
Pillai's Trace 1.55283567 15.87 14 64 <.0001
Hotelling-Lawley Trace 9.13040906 19.77 14 46.353 <.0001
Roy's Greatest Root 7.03105284 32.14 7 32 <.0001

The CANDISC Procedure

Canonical Analysis

Canonical Correlations

  Canonical
Correlation
Adjusted
Canonical
Correlation
Approximate
Standard
Error
Squared
Canonical
Correlation
Eigenvalues of Inv(E)*H
= CanRsq/(1-CanRsq)
Test of H0: The canonical correlations in the current row and all that follow are zero
  Eigenvalue Difference Proportion Cumulative Likelihood
Ratio
Approximate
F Value
Num DF Den DF Pr > F
1 0.935673 0.923771 0.019939 0.875483 7.0311 4.9317 0.7701 0.7701 0.04017501 17.67 14 62 <.0001
2 0.823014 0.805567 0.051665 0.677352 2.0994   0.2299 1.0000 0.32264765 11.20 6 32 <.0001

The CANDISC Procedure

Structure

Total

Total Canonical Structure
Variable Label Can1 Can2
urbanrate urbanrate -0.023552 0.449384
incomeperperson INCOMEPERPERSON 0.353380 0.880425
femaleemployrate FEMALEEMPLOYRATE 0.468948 0.258684
internetuserate INTERNETUSERATE 0.653067 0.685936
suicideper100th SUICIDEPER100TH 0.628376 -0.378591
alcconsumption ALCCONSUMPTION 0.738953 -0.184855
polityscore POLITYSCORE -0.153733 0.524234

Between

Between Canonical Structure
Variable Label Can1 Can2
urbanrate urbanrate -0.059477 0.998230
incomeperperson INCOMEPERPERSON 0.415137 0.909759
femaleemployrate FEMALEEMPLOYRATE 0.899687 0.436536
internetuserate INTERNETUSERATE 0.734514 0.678593
suicideper100th SUICIDEPER100TH 0.883592 -0.468258
alcconsumption ALCCONSUMPTION 0.976637 -0.214897
polityscore POLITYSCORE -0.316280 0.948666

Pooled

Pooled Within Canonical Structure
Variable Label Can1 Can2
urbanrate urbanrate -0.008947 0.274818
incomeperperson INCOMEPERPERSON 0.206223 0.827065
femaleemployrate FEMALEEMPLOYRATE 0.189549 0.168312
internetuserate INTERNETUSERATE 0.415298 0.702159
suicideper100th SUICIDEPER100TH 0.297042 -0.288084
alcconsumption ALCCONSUMPTION 0.369207 -0.148674
polityscore POLITYSCORE -0.060912 0.334356

The CANDISC Procedure

Coefficients

Total

Total-Sample Standardized Canonical Coefficients
Variable Label Can1 Can2
urbanrate urbanrate -0.041282195 0.297269547
incomeperperson INCOMEPERPERSON -0.183615258 0.972648842
femaleemployrate FEMALEEMPLOYRATE 0.198532118 0.120137004
internetuserate INTERNETUSERATE 1.913158088 0.406152053
suicideper100th SUICIDEPER100TH 1.077497781 -0.356077380
alcconsumption ALCCONSUMPTION 0.842923245 -0.514544728
polityscore POLITYSCORE -1.182104825 0.353344713

Pooled

Pooled Within-Class Standardized Canonical Coefficients
Variable Label Can1 Can2
urbanrate urbanrate -0.039366842 0.283477256
incomeperperson INCOMEPERPERSON -0.113987489 0.603815827
femaleemployrate FEMALEEMPLOYRATE 0.177942863 0.107677905
internetuserate INTERNETUSERATE 1.089919265 0.231383360
suicideper100th SUICIDEPER100TH 0.825777165 -0.272892041
alcconsumption ALCCONSUMPTION 0.611196081 -0.373091765
polityscore POLITYSCORE -1.080854678 0.323079881

Raw

Raw Canonical Coefficients
Variable Label Can1 Can2
urbanrate urbanrate -0.041282195 0.297269547
incomeperperson INCOMEPERPERSON -0.183615258 0.972648842
femaleemployrate FEMALEEMPLOYRATE 0.198532118 0.120137004
internetuserate INTERNETUSERATE 1.913158088 0.406152053
suicideper100th SUICIDEPER100TH 1.077497781 -0.356077380
alcconsumption ALCCONSUMPTION 0.842923245 -0.514544728
polityscore POLITYSCORE -1.182104825 0.353344713

Class Means

Class Means on Canonical Variables
CLUSTER Can1 Can2
1 3.680520722 -1.929491303
2 1.318112559 1.757165031
3 -2.660985644 -0.509132223

The SGPLOT Procedure

The SGPlot Procedure

The SGPlot Procedure

The MEANS Procedure

The MEANS Procedure

Cluster=.

Summary statistics

Analysis Variable : lifeexpectancy LIFEEXPECTANCY
N Mean Std Dev Minimum Maximum
191 69.7535236 9.7086205 47.7940000 83.3940000

Cluster=1

Summary statistics

Analysis Variable : lifeexpectancy LIFEEXPECTANCY
N Mean Std Dev Minimum Maximum
8 72.7375000 4.5945999 67.0170000 80.6420000

Cluster=2

Summary statistics

Analysis Variable : lifeexpectancy LIFEEXPECTANCY
N Mean Std Dev Minimum Maximum
14 80.0843571 2.1245235 75.4460000 83.3940000

Cluster=3

Summary statistics

Analysis Variable : lifeexpectancy LIFEEXPECTANCY
N Mean Std Dev Minimum Maximum
18 72.3777778 6.5790216 52.7970000 81.8550000

The ANOVA Procedure

The ANOVA Procedure

Data

Class Levels

Class Level Information
Class Levels Values
CLUSTER 3 1 2 3

Number of Observations

Number of Observations Read 253
Number of Observations Used 40

The ANOVA Procedure

Dependent Variable: lifeexpectancy LIFEEXPECTANCY

Analysis of Variance

lifeexpectancy

Overall ANOVA

Source DF Sum of Squares Mean Square F Value Pr > F
Model 2 525.765111 262.882555 10.32 0.0003
Error 37 942.269164 25.466734    
Corrected Total 39 1468.034275      

Fit Statistics

R-Square Coeff Var Root MSE lifeexpectancy Mean
0.358142 6.715446 5.046458 75.14703

Anova Model ANOVA

Source DF Anova SS Mean Square F Value Pr > F
CLUSTER 2 525.7651106 262.8825553 10.32 0.0003

Box Plot


The ANOVA Procedure

Means

CLUSTER

lifeexpectancy

Distribution of lifeexpectancy by CLUSTER

Distribution of lifeexpectancy by CLUSTER

Pairwise Multiple Comparisons

Tukey


The ANOVA Procedure

Tukey's Studentized Range (HSD) Test for lifeexpectancy

Note:This test controls the Type I experimentwise error rate.

Information

Alpha 0.05
Error Degrees of Freedom 37
Error Mean Square 25.46673
Critical Value of Studentized Range 3.45277

Pairs

Comparisons significant at the 0.05 level are indicated by ***.
CLUSTER
Comparison
Difference
Between
Means
Simultaneous 95% Confidence Limits  
2 – 1 7.347 1.886 12.807 ***
2 – 3 7.707 3.316 12.097 ***
1 – 2 -7.347 -12.807 -1.886 ***
1 – 3 0.360 -4.876 5.595  
3 – 2 -7.707 -12.097 -3.316 ***
3 – 1 -0.360 -5.595 4.876  
Advertisements
Running a K-Means Cluster Analysis

Running a Lasso Regression Analysis

The gapminder data set was selected to explore correlations between a quantitative response variable, national life expectancy, and a range of quantitative and categorical explanatory variables. In the course to date these have been national income per person, female employment rate and polity scores with some interesting variances in the findings across analysis tools. For the purposes of conducting a LASSO regression analysis with lots of variables, in this assignment, the following further predictors were selected: Internet Use Rate (internetuserate), Rate of Suicide per 100 (suicideper100th) and Alcohol Consumption per capita (alcconsumption).

Syntax

SASCode

Output

The SURVEYSELECT Procedure

The SURVEYSELECT Procedure

Sample Selection Method

Selection Method Simple Random Sampling

Sample Selection Summary

Input Data Set NEW
Random Number Seed 12345
Sampling Rate 0.7
Sample Size 40
Selection Probability 0.714286
Sampling Weight 0
Output Data Set TRAINTEST

The GLMSELECT Procedure

The GLMSELECT Procedure

Model Information

Data Set WORK.TRAINTEST
Dependent Variable lifeexpectancy
Selection Method LAR
Stop Criterion None
Choose Criterion Cross Validation
Cross Validation Method Random
Cross Validation Fold 10
Effect Hierarchy Enforced None
Random Number Seed 123

Number of Observations

Number of Observations Read 56
Number of Observations Used 56
Number of Observations Used for Training 40
Number of Observations Used for Testing 16

Dimensions

Dimensions
Number of Effects 7
Number of Parameters 7

The GLMSELECT Procedure

Model Building Summary

LAR Selection Summary

LAR Selection Summary
Step Effect
Entered
Number
Effects In
ASE Test ASE CV PRESS
* Optimal Value of Criterion
0 Intercept 1 38.6825 18.8480 1618.8750
1 internetuserate 2 19.0786 12.4287 643.7061*
2 incomeperperson 3 14.4148 11.1714 695.1321
3 suicideper100th 4 11.5353 8.3931 666.2570
4 polityscore 5 11.4361 8.9805 758.3542
5 alcconsumption 6 11.3476 10.3282 801.8344
6 femaleemployrate 7 11.3450 10.6193 844.1639

Stop Reason

Selection stopped because all effects are in the final model.

Coefficient Plot

Criterion Panel

ASE Plot

Selected Model


The GLMSELECT Procedure

Selected Model

The selected model, based on Cross Validation, is the model at Step 1.

Selected Effects

Effects: Intercept internetuserate

ANOVA

Analysis of Variance
Source DF Sum of
Squares
Mean
Square
F Value
Model 1 784.15817 784.15817 39.05
Error 38 763.14241 20.08269
Corrected Total 39 1547.30058

Fit Statistics

Root MSE 4.48137
Dependent Mean 75.14790
R-Square 0.5068
Adj R-Sq 0.4938
AIC 163.94261
AICC 164.60927
SBC 125.32037
ASE (Train) 19.07856
ASE (Test) 12.42866
CV PRESS 643.70610

Parameter Estimates

Parameter Estimates
Parameter DF Estimate
Intercept 1 70.102732
internetuserate 1 0.096426

Summary

Simple Random Sampling (SRS) was used to split the observations into 70% training data and 30% test data. In the LASSO regression analysis, which is used as it gives greater accuracy where there are many predictors, the Least Angle Regression (LAR) selection method was used with a random k=10 fold cross validation method. All predictor variables were standardized to have a mean of zero and a standard deviation of one. 56 observations of 213 were read.

As we can see, Internet Use Rate (internetuserate) is by far the strongest predictor of life expectancy (lifeexpectancy), followed at some distance by the positive predictor of income per person (incomeperperson), and the negative predictor Suicide per 100 per capita (suicideper100th). The best fit model in terms of the variance bias trade off falls on suicideper100th. Slight negative predictors polity score (polityscore), alcohol consumption per capita (alcconsumption) and female employment rate (femaleemployrate) fall outside the best fit model: as we can see the residual sum of squares in the test data set, shown in CV Press, starts to rise slightly after levelling off at suicideper100th. All fit criterias agree on this model. The close tracking between test and training Progression of Average Squared Errors indicates stable prediction accuracy.

Final figure are R-square = 70%, which demonstrates strong prediction capacity, with the adjusted r-square only slightly less at 68%. The training mean square error = 11.5%, and the test mean square error = 8.4%. Estimated regression co-efficients for the selected model are internetuserate at 0.14, incomeperperson at <0.000 and suicideper100th at -0.18.

 

Running a Lasso Regression Analysis

Running a Random Forest

This data was drawn from Gapminder.

Syntax

MachineLearningCode2

Output

MachineLearningOutputCanvas2

 

Interpretation

Random forest analysis was performed to evaluate the importance of a series of explanatory variables in predicting a binary, categorical response variable. The following explanatory variables were included as possible contributors to a random forest evaluating life expectancy (my response variable), income per person, female employment rate and polity score.

The explanatory variable with the highest relative importance scores was income per person. The accuracy of the random forest was 78%, with the subsequent growing of multiple trees rather than a single tree, adding little to the overall accuracy of the model, and suggesting that interpretation of a single decision tree may be appropriate.

Running a Random Forest

Running a Classification Tree

From the Gapminder data set, the quantitative response variable life expectancy was binned into binary categories of less than one standard deviation and over one standard deviation from the mean. This was subsequent to analysing for a binary split across the mean.

The explanatory variables we have been looking at are the categorical polity score and quantitative income per person and female employment rate. This was run with and without assigning missing values to popular.

Syntax

MachineLearningCode1

Output – without assigning missing values

MachineLearningOutput1b

MachineLearningOutput1c

MachineLearningOutput1d

MachineLearningOutput1f

MachineLearningOutput1g

Output – with assigning missing values

MachineLearningOutputCanvas1b

Interpretation

Decision tree analysis was performed to test nonlinear relationships among a series of explanatory variables and a binary, categorical response variable. All possible separations (categorical) or cut points (quantitative) are tested. For the present analyses, the entropy “goodness of split” criterion was used to grow the tree and a cost complexity algorithm was used for pruning the full tree into a final subtree.

The following explanatory variables were included as possible contributors to a classification tree model evaluating life expectancy (my response variable), income per person, female employment rate and polity score. The income per person score was the only variable to separate the sample into subgroups.

In the first model which did not assign missing values, those with an income greater than $8875 (range $104-$105147, M $8741, SD $14263) were more likely to have a Life Expectancy beyond one standard deviation from the mean compared to those with an income less than $8875 (100% vs. 0%).

In the second model, which did assign missing values, there was a two level split. The first occurred at $9.5k with those below likely to have a life expectancy one standard deviation below the mean (96% to 4%); for those with an income above $9.5k this dropped to 20%. There was a further subdivision at $52.6k, where I can’t actually read the figures on SAS or the printout, but which seems to indicate an income above $52.6k is associated with life expectancy below one standard deviation from the mean (100% to 0%). Previous analyses of data suggested a small number of outlying variables with high leverage and this could be a factor which impacts here and suggests managing the data for these variables. Sensitivity and specificity values were not output.

This first model classified 100% of the sample correctly, and the second at 6% error rate.

 

 

Running a Classification Tree

Logistic Regression

These data were drawn from Gapminder with the hypothesis that female employment rate is associated with life expectancy. Life expectancy is a quantitative variable binned into dummy codes of 0 below mean and 1 above mean.

1) Summary of your Results (parts 1-3)

Female employment rate has an odds ration of 0.962, a p value of 0.02 and a 95% confidence interval of 0.93 to 0.99. This statistically significant result suggests that female employment rate reduces life expectancy very slightly (just below 50:50) with income per person taken into account.

Income per person has an odds ratio of 1.001, a p value of <0.0001 and a 95% confidence interval of 1 (1.001 to 1.001). This statistically significant result has a 95% confidence internal which does not overlap with that of female employment rate; and could be argued to have a stronger association.

This suggests that while the hypothesis that while female employment rate demonstrates a statistically significant slightly negative correlation with life expectancy; income per person demonstrates a stronger positive correlation.

Income per person does not appear to be a confounding variable.

“After adjusting for potential confounding factor, income per person, the odds of having longer life expectancy was just under fifty fifty for countries demonstrating female employment than for those without (OR=.96, 95% CI = 0.93-0.99, p=.002). Income per person was however significantly associated with longer life expectancy (OR= 1.001, 95% CI=1.001-1.001, p<0.0001).”

2) Output of Logistic Regression Model

LogisticRegression-results-page-002 LogisticRegression-results-page-003

LIBNAME mydata “/courses/d1406ae5ba27fe300 ” access=readonly;
DATA new; set mydata.gapminder;

IF lifeexpectancy LE 69.7535236 THEN LifeExp=0; /*life expectancy less than 73.13%*/
ELSE LifeExp=1; /*life expectancy greater than per person*/

PROC SORT; BY COUNTRY;

proc means; var lifeexpectancy femaleemployrate incomeperperson polityscore;

PROC LOGISTIC descending; model LifeExp=femaleemployrate incomeperperson;

RUN;

 

Logistic Regression

Multiple Regression Modelling

1) Summary of Results (parts 1-4)

H0= there is no relationship between female employment rate and life expectancy; H1=there is a relationship between  female employment rate and life expectancy

Income per person and polity score are investigated as confounding variables.

Coefficients (β1) and Statistical Significance (p values)

β1=-0.21, β0=74.30, p=<0.0001 linear female employment rate

β1=-0.0007, β0=74.30, p=<0.7188 quadratic of female employment rate, once income per person and polity score are included in the equation

β1=0.0006, β0=74.30, p=<.0001 income per person

β1=0.23738, β0=74.30, p=<0.0248 polity score

The R-square across these vales is 0.49 and the F-value is 35.70

The Q-Q plot demonstrates values falling above the line in the centre and below the line at each end, which suggests there are likely to be omitted explanatory variables, and/ or quadratic relationships.

The standardised residuals indicate poor modelling at the lower life expectancies in particular, suggesting other explanatory variables are likely to be significant there; while there is little or nothing above the 95% significance line at higher life expectancies.

The leverage plot indicates a comparatively low number of low impact outliers and high to very high impact non-outliers.

The partial plots indicate clear clusterings and potential polynomial rather than linear relationships on other explanatory variables with statistical significance. However, the statistical significance of the quadratic female employment variable was lost when other statistically significant explanatory variables were introduced into the equation – this could be perceived as an initially confounding variable.

Overall

While I have found that life expectancy shows a statistically significant and slightly negative correlation with female employment rate, variables income per person and polity score also have a major positive impact. These bring the R-square up from 10% with female employment alone, to 49% including income per person and polity score. There continues to be mis-specification in the model, suggesting missing explanatory variables, particularly at lower levels of life expectancy and perhaps polynomial relationships.

 2) Output of Multiple Regression Model

MultipleRegressionAnalysis-0MultipleRegressionAnalysis-1MultipleRegressionAnalysis-2

 

3) Regression Diagnostic Plots

MultipleRegressionAnalysis-3MultipleRegressionAnalysis-4MultipleRegressionAnalysis-5MultipleRegressionAnalysis-6MultipleRegressionAnalysis-7MultipleRegressionAnalysis-8MultipleRegressionAnalysis-9

 

 

MultipleRegressionAnalysisCode

Multiple Regression Modelling

Basics of Linear Regression

In this analysis, I have used two quantitative variables from the Gapminder data set: femaleemployrate as the independent explanatory variable, and lifeexpectancy as the dependent response variable.

Program

RegressionCode1

Output

RegressionOutput_1RegressionOutput_2

Frequency table

As can be seen, the mean is 47.5

RegressionOutput_3

Result of Linear Regression Analysis

The results of the linear regression model indicated that national life expectancy (β1=0.19, β0=70, p=.0003) was significantly and negatively associated with national female employment rate. F=13.98 and R-square – 0.07

I have demonstrated in previous posted analyses that this is not as straight forward as it looks, as there are confounding variables such as incomeperperson, and the relationship is curvilinear.

(NB

It is interesting that I first ran this without centering the mean as it was not in the week 2 materials, and there is no difference whatsoever in outputs on centering the mean once I found the code in the week 3 materials. I had done some reading around and somewhere suggested but without being clear that the PROC GLM might do this anyway.)

Basics of Linear Regression