Letný semester 2026 | Cvičenie 3 | 16.03.2026
(SAS
markdown pre samostatnú prácu)
Prihlásenie k SAS OnDemand:
https://www.sas.com/en_us/software/on-demand-for-academics.html
Nutná je registrácia s vytvorenie účtu s vlastným identifikačným číslom
a potvrdenie registrácie prostredníctvom (univerzitného) emailu zadaného
pri registrácii. Identifikačné číslo užívateľa (vo forme
uXXX, kde
XXX je samotné číslo uživateľa)
sa vyskytuje v jednotlivých SAS skriptoch uvedených nižšie (symbol
XXX v skriptoch je potrebné
nahradiť príslušným identifikačným číslom užívateľa).
Korelované (resp. závislé) opakované (longitudinálne) pozorovania lze často vhodne analyzovať aj klasickými štatistickými metódami a postupmi, ktoré sú primárne určené pre analýzu nezávislých a rovnako rozdelených pozorovaní (náhodný výber, resp. i.i.d. pozorovania).
Takúto ``jednoduchú’’ analýzu je ale nutné spracovať korektným postupom. Niektoré základné metódy v tomto smere a tiež ich konkrétnu aplikáciu na reálne data v programe SAS ilustrujeme nižšie.
V prvom rade je nutné správne pochopenie celkovej štruktúry
longitudinálnych dat. Formálna (matematická) reprezentácia môže byť ale
rôzna, nemusí byť jednoznačná a jednotlivé spôsoby zápisu nemusia byť
nutne ekvivalentné (napr. možná strata informácie pre alternatívnom
zápise).
V súvislosti s analýzou panelových a/alebo longitudinálnych dat sa bežne používa terminológia, resp. pojmy ako long-data formát, alebo wide-data formát. Z matematického hľadiska je možné oba typy datových súborov reprezentovať nasledujúcim spôsobom.
Predpokládajme, že sledujeme opakovane v čase \(N \in \mathbb{N}\) vzájomne nezávislých subjektov a zaujíma nás konkrétna hodnota odozvy – t.j. premennej, resp.náhodnej veličiny \(Y \in \mathbb{R}\). Jednotlivé (realizované) porozorvania pre každý subjekt môžeme reprezentovať ako vektor \(\boldsymbol{Y}_{i} = (Y_{i j}, \dots, Y_{i n_i})^\top \in \mathbb{R}^{n_i}\), kde \(n_i \in \mathbb{N}\) je počet opakovaných (t.j., vzájomne korelovaných) pozorovaní v rámci \(i\)-teho subjektu (pričom jednotlivé subjekty sú medzi sebou nezávislé). Pre celkový počet pozorovaní \(\mathrm{N} \in \mathbb{N}\) (počet sledovaných subjektov je značený ako \(N \in \mathbb{N}\)) potom platí, že \[ \mathrm{N} = \sum_{i = 1}^N n_i. \] Celkový vektor pozorovaní závislej premennej (t.j. long-data formát) je potom možné reprezentovať združene prostredníctvom vektoru \[ \boldsymbol{Y} = \Big( Y_{1 1}, \dots, Y_{1 n_1}, Y_{2 1}, \dots, Y_{N n_N}\Big)^\top = \Big(\boldsymbol{Y}_1~^\top, \dots, \boldsymbol{Y}_{N}~^\top\Big)^\top \in \mathbb{R}^{\mathrm{N}} \] Ak sú navyše longitudinálne data balancované, resp. pre každý subjekt je nameraný rovnaký počet pozorovaní (niekedy sa navyše ešte predpokladá, že jednotlivé pozorovania sú uskutočnené v rovnakých časových okamžikoch), t.j. \(n _i = n \in \mathbb{N}\) pro \(\forall i \in \{1, \dots, N\}\) tak ``data’’ je možné reprezentovať aj v maticovom zápise (t.j. wide-data) ako \[ \mathbb{Y} = \left( \begin{array}{ccc} Y_{1 1} & \dots & Y_{1 n_1}\\ Y_{2 1} & \dots & Y_{2 n_2}\\ \ldots & \dots & \ldots\\ Y_{N 1} & \dots & Y_{N n_N} \end{array} \right) = \left( \begin{array}{c} \boldsymbol{Y}_1~^\top\\ \boldsymbol{Y}_2~^\top\\ \vdots \\ \boldsymbol{Y}_N~^\top\\ \end{array} \right). \] Oba uvedené zápisy majú svoje zjavné výhody aj nevýhody (resp. obmedzenia). Tieto výhody a nevýhody sú evidentné aj pri následnej formulácii regresného modelu pre jednotlivé reprezentácie.
Regresné rozšírenie pre vektor \(\boldsymbol{Y} \in
\mathbb{R}^{\mathrm{N}}\)
Predchádzajúci model lze rozšíriť v zmysle regresného konceptu. Pre slcový vektor závislých pozorovaní \(\boldsymbol{Y} = \Big(\boldsymbol{Y}_1~^\top, \dots, \boldsymbol{Y}_{N}~^\top\Big)^\top \in \mathbb{R}^{\mathrm{N}}\) a regresnú maticu \(\mathbb{X} \in \mathbb{R}^{\mathrm{N}\times p}\), môžeme uvažovať regresný model v tvare \[ \boldsymbol{Y} = \mathbb{X} \boldsymbol{\beta} + \boldsymbol{\varepsilon}, \] kde \(\boldsymbol{\beta} \in \mathbb{R}^p\) je \(p\)-rozmerný (neznámy) vektor parametrov. Keďže je nutné správne zohľadniť variačnú a kovariačnú štruktúru pozorovaní medzi jednotlivými (nezávislými) subjektami a korelovanosť, resp. závislosť opakovaných meraní v rámci každého subjektu, je potrebné pre vektor náhodných chýb predpokladať vhodnú závislostnú štruktúru – napr. prostredníctvom mnohorozmerného normálneho rozdelenia \[ \boldsymbol{\varepsilon} = \left( \begin{array}{c} \varepsilon_{1 1}\\ \vdots \\ \varepsilon_{1 n_1}\\ \varepsilon_{2 1}\\ \vdots \\ \varepsilon_{N n_N} \end{array} \right) \sim N_{N_T} \left( \left( \begin{array}{c} 0\\ \vdots \\ 0 \end{array} \right), \left( \begin{array}{c} \Sigma_1 & 0 & \dots & 0\\ 0 & \Sigma_2 & \dots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \dots & \Sigma_N \end{array} \right) \right), \]
kde covariančna štruktúra (nulové prvky – resp. nulové matice
vhodných rozmerov) reprezentujú vzájomnú nezávislosť medzi jednotlivými
subjektami a príslušné (pozitívne definitné a symetrické)
variačné-kovariačné matice \(\Sigma_{i} \in
\mathbb{R}^{n_i \times n_i}\) pre \(i
\in \{1, \dots, N\}\) sú v tvare \[
\Sigma_{i} = \left(
\begin{array}{c}
\sigma_{1 1}^{(i)} & \sigma_{1 2}^{(i)} & \dots & \sigma_{1
n_i}^{(i)}\\
\sigma_{2 1}^{(i)} & \sigma_{2 2}^{(i)} & \dots & \sigma_{2
n_i}^{(i)}\\
\vdots & \vdots & \ddots & \vdots \\
\sigma_{n_i 1}^{(i)} & \sigma_{n_i 2}^{(i)} & \dots &
\sigma_{n_i n_i}^{(i)}\\
\end{array}
\right) \in \mathbb{R}^{n_i \times n_i}.
\]
Regresné rozšírenie pre maticu \(\mathbb{Y} \in \mathbb{R}^{N \times
n}\)
V prípade odozvy reprezentovanej v maticovom tvare je zápis modelu trochu odlišný. Analogický model môžeme formálne zapísať ako \[ \mathbb{Y} = \mathbb{X}\mathbb{B} + \mathbb{E}, \] kde \(\mathbb{X} \in \mathbb{R}^{N \times p}\) a namiesto vektoru neznámych parametrov \(\boldsymbol{\beta} \in \mathbb{R}^p\) (ako v predchádzajúcom prípade) reprezentuje \(\mathbb{B} \in \mathbb{R}^{p \times n}\) maticu neznámych parametrov a \(\mathbb{E}\) je matica chybových členov, pričom platí (uvažujúc opäť normálny model), že \(\mathbb{E} = (\boldsymbol{e}_{1}, \dots, \boldsymbol{e}_{N})^\top\), pričom náhodné vektory \(\boldsymbol{e}_i = (\varepsilon_{i 1}, \dots, \varepsilon_{i n})^\top\) pre \(i = 1, \dots, N\) tvoria náhodný výber z mnohorozmerného normálneho rozdelenia s nulovým vektorom stredných hodnot a variačnou-kovaričnou maticou \[ \Sigma = \left( \begin{array}{c} \sigma_{1 1} & \dots & \sigma_{1 n}\\ \vdots & \ddots & \vdots\\ \sigma_{n 1} & \dots & \sigma_{n n} \end{array} \right) \in \mathbb{R}^{n \times n}. \]
Najjednoduchším príkladom štatistickej analýzy longitudinálnych dat
môže byť klasický jednovýberový párový \(t\)-test (t.j., pre každý subjekt máme
pouze dva opakované korelované pozorovania). Tvojvýberový \(t\)-test je čosto veľmi užitočný a
efektívne aplikovateľný aj v prípade, že longitudinálne data, ktoré je
potrebné analyzovať, obsahujú v rámci jednotlivých subjektov výrazne
viacej opakovaných pozorovaní. Keďže správna (korektná) štatistická
analýza longitudinálnych dat je pomerne zložitá, v praxi sa celkom bežne
používajú niektoré jednoduchšie postupy, ktorých cieľom je určité
zjednodušenie štruktúry dat a následná štatistická analýza nezávislých
(i.i.d) pozorovaní.
V následujúcej časti budeme pre ilustráciu uvažovať csv súbor) s datami o pacientoch so sklerózou multiplex. Zameriame sa hlavne na implementáciu párového \(t\)-testu v programe SAS. Ako závislú premennú budeme uvažovať veličinu EDSS (t.j., Expanded Disability Status Scale) .
Data načítame v SAS OnDemand a náslene upravíme do vhodnejšieho tvaru (pre aplikáciu pároveho \(t\)-testu) pomocou následujúcich príkazov:
libname sm '/home/uXXX/sasuser.v94';
filename reffile '/home/uXXX/sasuser.v94/data/sm_data2.csv';
proc import datafile=reffile
dbms=csv
out=sm.data
replace;
getnames=yes;
run;
proc print datafile = sm.data;
run;
Jednoduchý boxplot pre hodnoty EDSS v jednotlivých meranianiach získame napr. takto:
proc sgplot data=sm.data;
vbox EDSS / group = time;
run;
Následne je vhodné využiť transformáciu “long-data” formátu do “wide-data” formátu. To lze dosiahnúť napr. takto:
proc sort data=sm.data; by id; run;
proc transpose data=sm.data out=sm.dataWide;
by id;
var EDSS;
run;
proc print datafile = sm.dataWide;
run;
Pre ilustráciu budeme pomocou párového \(t\)-testu analyzovať zmenu EDSS v období piatich rokov po aplikácii novej liečby – Lemtrady. Implementácia párového \(t\)-testu v programe SAS je následovná:
proc ttest data=sm.dataWide alpha=0.05;
paired COL5*COL1;
run;
Pre porovnanie, aplikujeme ešte klasický dvojvýberový \(t\)-tes. Intuitívne značenie je v zmysle
datového súboru vo forme dvoch (nezávislých) náhodných výberov (s
pridanou dodatočnou premennou určujúcou príslušnú skupinu). Z datového
súboru sm.dataWide teda vyberieme pouze relevantne premenné
(t.j. stĺpce COL1 a COL5) a data príslušne upravíme.
data sm.data15;
set sm.dataWide;
keep COL1 COL5;
run;
proc print datafile = sm.data15;
run;
Vytvorili sme nový datový súbor s názvom sm.data15.
Hodnoty z oboch stĺpcov združíme do jedného stĺpca a príslušné riadky
označíme poradím merania:
data sm.twoSample;
length Sample $284.;
set sm.data15;
array numvars[*] _NUMERIC_;
do i = 1 to dim(numvars);
Sample = vname(numvars[i]);
EDSS = numvars[i];
output;
end;
keep Sample EDSS;
run;
proc print datafile = sm.twoSample;
run;
Následne je už možné priamo aplikovať dvojvýberový \(t\)-test na datový súbor
sm.twoSample. Konkrétna implementácia v programe SAS je
následujúca:
proc ttest data=sm.twoSample alpha=0.05;
class Sample;
var EDSS;
run;
Priama implementácia pomocou špecifikácie príslušných premenných v pôvodnom (“wide-data”) súbore dopadne ale takto:
/* paired t-test */
proc ttest data=sm.dataWide alpha=0.05;
paired COL5*COL1;
run;
/* two sample t-test */
proc ttest data=sm.dataWide alpha=0.05;
var COL5 COL1;
run;
Nad rámec jednoduchého (párového) \(t\)-testu, ktorý je možné využiť pre analýzu longitudinálných (resp. korelovaných/závislých) dat, je možné využiť aj niektoré komplexnejšie štatistické testy – napr. testy založené na mnohorozmernom normálnom rozdelení (či už presné testy za predpokladu normality, alebo aspoň približné, teda asymptotické testy za určitých dodatočných technických predpokladov).
Na rozdiel od párového \(t\)-testu,
ktorý porovnával konkrétnu dvojucu meraní v rámci jedného subjektu
(napr. test rozdielu EDSS pred liečbou (COL1) a po piatich
rokoch liečby (COL5) – t.j. zmena závislej premennej v
rámci konkrétneho subjektu za určitú časovú jednotku), je možné testy
založené na mnohorozmernom normálnom rozdelení zobecniť aj na dlhšie
longitudinálne profily.
V následujúcej časti sa zameriame na porovnanie dvoch stredných (očakávaných) longitudinálných profilov u dvoch rôznych (nezávislých) skupín. Namiesto dvoch konkrétnych časových okamžikoch (t.j., jednorozmerného párového \(t\)-testu) porovnáme celkový (stredný) profil u dvoch skupín pacientov—mužov a žien (pomocou mnohorozmerného (nepárového) \(t\)-testu).
Jednotlivé longitudinálne pozorovania (resp. subject-specific profily) získame napr. pomocou následujúceho SAS kódu:
title "Response Profiles by Gender";
proc sgplot data=sm.data;
series x=time y=EDSS / group=id groupLC=gender break lineattrs=(pattern=solid)
attrid=Treat;
legenditem type=line name="P" / label="Male" lineattrs=GraphData1;
legenditem type=line name="A" / label="Female" lineattrs=GraphData2;
keylegend "A" "P";
xaxis values=(0 1 4 6) grid;
run;
A príslušné priemerné profily pre dve vzájomne nezávislé skupiny – mužov a ženy – získame následujúcim spôsobom:
proc sgplot data=sm.data;
vline time / response=EDSS group=gender stat=mean limitstat=stderr;
run;
Porovnajte predchádzajúci výstup aj s následujúcim grafom:
proc sgplot data=sm.data;
vline time / response=EDSS group=gender;
run;
S použitim grafov vytvorených vyššie, sa pokúste analyzovať
rozdiely medzí odhadnutým (resp. testovať rozdiely medzi neznámym
strednými profilmi mužským a ženským pacientov. Ak existuje nejaký
časový okamžík v rámci uvažovaného sledovaného obdobia, ktorý by mohol
mať za následok zamietnutie nulovej hypotézy o
rovnobežnosti/rovnosti/zhodnosti očakávaných EDSS profilov u mužského a
ženského pacienta, ktorý moment v rámci follow-up obdobia by to na
základe exploratívnej analýzy mohol byť?
Formálny štatistický test (pomocou Hotellingovej \(T^2\) testovej štatistiky) získame z tzv.
wide-data formátu pomocou procedúry PROC GLM.
proc sort data=sm.data; by id; run;
proc transpose data=sm.data out=sm.dataWide prefix=Time_;
by id gender; /* Unique subject identifier and variables*/
id time; /* Variable that differentiates repeated measures */
var EDSS; /* The measurement variable */
run;
proc glm data=sm.dataWide;
class gender;
model Time_0 Time_1 Time_2 Time_3 Time_4 = gender;
manova h=gender / printh printe; /* Performs Hotellings test */
run;
V následujúcej časti sa zameriame na tri konkrétne štatistické testy, ktoré sa v súvislosti s analýzou longitudinálnych dat často využívajú:
Z matematického hľadiska je možné štatistický test rovnobežnosti longitudinálnych profilov formulovať aj ako štatistický test rovnosti jednotlivých inkrementov (v ľubovolných časových okamžikoch) medzi dvoma skupinami.
Uvažujme náhodný výber (mužskí pacienti) \(\boldsymbol{X}_1, \dots, \boldsymbol{X}_{N_1}\) z mnohorozmerného normálneho rozdelnia \(N_{n}(\boldsymbol{\mu}_1, \Sigma)\) a na ňom nezávislý druhý náhodný výber (ženský pacienti) \(\boldsymbol{Y_1}, \dots, \boldsymbol{Y}_{N_2}\) z mnohorozmerného normálneho rozdelenia \(N_{n}(\boldsymbol{\mu}_2, \Sigma)\).
Všimnite si, že predpokladané rozdelenia jednotlivých náhodných výberov sú stejné až na vektor stredných hodnôt (rovnaká dimenzia, rovnaká variančná-kovariančná matica). Jednotlivé pozorovania – napr. \(\boldsymbol{X}_i\) pre \(i = 1, \dots, N_1\) (resp. \(\boldsymbol{Y}_j\) pre \(j = 1, \dots, N_2\)) predstavujú individuálne longitudinálne profily, každý o celkovej dĺžke \(n \in \mathbb{N}\) opakovaných (korelovaných, resp. závislých) pozorovaní v rámci daného subjektu. Uvažovaný model – t.j. variančná-kovariančná matica \(\Sigma \in \mathbb{R}^{n \times n}\) je pozitívne definitná a symetrická, ale inak nešpecifikovaná. Umožňuje preto modelovať koreláciu medzi jednotlivými opakovanými pozorovaniami.
Je nutné sí uvedomiť, že vzhľadom k predpokladu rovnakej
variančnej-kovariančnej matice je nutné, aby boli pozorovania
balancované v rámci oboch skupín dohromady.
V takto formulovanom pravdepodobnostnom modeli je štatistický test rovnobežnosti longitudinálnych profilov pre \(\boldsymbol{X}_1, \dots, \boldsymbol{X}_{N_1} \sim N_n(\boldsymbol{\mu}_1, \Sigma)\) a \(\boldsymbol{Y}_1, \dots, \boldsymbol{Y}_{N_2} \sim N_n(\boldsymbol{\mu}_2, \Sigma)\) ekvivalentný s nulovou hypotézou \[ H_0: \mathbb{C}(\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2) = \boldsymbol{0}, \] oproti obecnej alternatíve, že nulové hypotéza \(H_0\) neplatí, teda \(H_A: \mathbb{C}(\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2) \neq \boldsymbol{0}\). Rovnosť v \(H_0\) je myslená po zložkách a matica \(\mathbb{C}\) je definovaná ako matica kontrastov v tvare \[ \mathbb{C} = \left( \begin{array}{ccccc} 1 & -1 & 0 & \dots & 0\\ 0 & 1 & -1 & \dots & 0\\ \vdots & \vdots & \ddots & \ddots & \vdots\\ 0 & 0 & \dots & 1 & -1 \end{array} \right) \in \mathbb{R}^{(n - 1) \times n}. \] Pre výberový priemer \(\overline{\boldsymbol{X}}_{N_1} \sim N_{n}(\boldsymbol{\mu}_1. \frac{1}{N_1}\Sigma)\) a výberový priemer \(\overline{\boldsymbol{Y}}_{N_2} \sim N_n(\boldsymbol{\mu}_2, \frac{1}{N_2} \Sigma)\) platí mnohorozmerné normálne rozdelenie Pre odhad variančnej-kovariančnej matice \(\Sigma \in \mathbb{R}^{n \times n}\) použijeme (za predpokladu homoskedasticity – teda totožných variančných-kovariančných matíc v oboch skupiných) tzv. pooled variance estimate, ktorý je definovaný ako
\[{S}_{N_1 + N_2} = \frac{1}{N_1 + N_2}\Big[N_1 \widehat{\Sigma}_{X} + N_2 \widehat{\Sigma}_Y\Big],\]
kde \(\widehat{\Sigma}_X\) a \(\widehat{\Sigma}_Y\) sú výberové variančné-kovariančné matice založené na náhodných výberoch \(\boldsymbol{X}_1, \dots, \boldsymbol{X}_{N_1}\) a \(\boldsymbol{Y}_1, \dots, \boldsymbol{Y}_{N_2}\). Pre pooled-variance estimate \({S}_{N_1 + N_2} \equiv \widehat{\Sigma}\) zároveň platí, že \[ {S}_{N_1 + N_2} \sim W_{n}(\Sigma, N_1 + N_2 - 2) \] kde \(W_{n}(\Sigma, N_1 + N_2 - 2)\) predstavuje Wishartovo mnohorozmerné rozdelenie (\(n\)-rozmerné) s variančnou-kovariančnou maticou \(\Sigma\) a \(N_1 + N_2 - 2\) stupňami voľnosti (analógia jednorozmerného \(\chi^2\) rozdelenia s \(n\) stupňami voľnosti a parametrom necentrality).
Za platnosti nulovej hypotézy \(H_0\) teda platí, že testová štatistika
definovaná predpisom \[
T = \frac{N_1 N_2}{(N_1 + N_2)^2} (N_1 + N_2 -
2)\Big[\mathbb{C}(\overline{\boldsymbol{X}}_{N_1} -
\overline{\boldsymbol{Y}}_{N_2}) \Big]^\top \Big(
\mathbb{C}\mathrm{S}_{N_1 + N_2}\mathbb{C} \Big)^{-1}
\Big[\mathbb{C}(\overline{\boldsymbol{X}}_{N_1} -
\overline{\boldsymbol{Y}}_{N_2}) \Big]
\] má Hotellingovo \(T^2\)
rozdelenie s \(n - 1\) a \(N_1 + N_2 - 2\) stupňami voľnosti.
V programe SAS uskutočníme test napr. pomocou procedúry
PROC GLM následujúcou implementáciou:
proc glm data=sm.dataWide;
class gender;
model Time_0 Time_1 Time_2 Time_3 Time_4 = gender;
manova h=gender / printh printe; /* Performs Hotellings test */
/* Specify the contrast matrix C */
manova h=gender m=(1 -1 0 0 0,
0 1 -1 0 0,
0 0 1 -1 0,
0 0 0 1 -1) prefix=diff;
run;
Hotellingovo \(T^2\) rozdelenie je definované prostredníctvom mnohorozmerného normálneho rozdelenia a Wishartovho rozdelenia pre náhodné štvorcové matice (analogiky, ako je \(t\) rozdelenie definované prostredníctvom jednorozmerného normálneho rozdelenia a \(\chi^2\) rozdelenia) ako \[ T = N \boldsymbol{X}^\top \mathrm{S}^{-1}\boldsymbol{X} \sim T^2(n, N) \] kde \(\boldsymbol{X} \sim N_n(\boldsymbol{0}, \mathbb{I}_{n \times n})\), náhodný vektor \(\boldsymbol{X}\) je nezávislý s náhodnou maticou \(\mathrm{S}\) a platí, že \(\mathrm{S} \sim W_n(\mathbb{I}_{n \times n}, N)\).
Druhým zaujímavým testom v súvislosti s analýzou longitudinálnych profilov medzi dvoma nezávislými skupinami je porovnanie jednotlivých profilov v zmysle vzájomnej rovnosti – teda štatistický test rovnosti dvoch (neznámych) stredných profilov. Je dôležité si uvedomiť, že tento test nemá dobrý zmysel v prípade, že predchádzajúci test o rovnobežnosti profilov zamietol nulovú hypotézu. V takom prípade totiž dve porovnávané skupiny reagujú v priebehu času rozdielne (stredné profily nie sú totožné).
Nulová hypotéza može byť formálne zapísana ako \[ H_0: \boldsymbol{1}^\top (\boldsymbol{\mu}_1 - \boldsymbol{\mu_2}) = 0, \] oproti obecnej alternatíve \[ H_1: \boldsymbol{1}^\top (\boldsymbol{\mu}_1 - \boldsymbol{\mu_2}) \neq 0. \] V prípade alternatívy teda existuje aspoň jeden časový okamžík z uvažovaného follow-up obdobia (o celkovej dĺžke \(p \in \mathbb{N}\)), pre ktorý platí, že stredná hodnota \(E\boldsymbol{X}\) je v danej dimenzii odlišná od strednej hodnoty \(E\boldsymbol{Y}\) (v tej istej dimenzii).
Štatistický test nulovej hypotézy \(H_0\) je opäť založený na testovej
štatistike, ktorá má za platnosti nulovej hypotézy Hotellingovo \(T^2\) rozdelenie.
V prvom rade opäť
platí, že skupinové výberové priemerý majú postupne mnohorozmerné
normálne rozdelenie \[
\overline{\boldsymbol{X}}_{N_1} \sim N_{n}(\boldsymbol{\mu}_1,
\frac{1}{N_1} \Sigma)
\] a \[
\overline{\boldsymbol{Y}}_{N_2} \sim N_{n}(\boldsymbol{\mu}_2,
\frac{1}{N_2}\Sigma).
\] Z obecných vlastnosti mnohorozmerného normálneho rozdelenia (a
tiež vzájomnej nezávislosti medzi \(\boldsymbol{X}_i\) a \(\boldsymbol{Y}_j\)) zároveň platí, že \[
\big(\overline{\boldsymbol{X}}_{N_1} -
\overline{\boldsymbol{Y}}_{N_2}\big) \sim N_{n}(\boldsymbol{\mu}_1 -
\boldsymbol{\mu}_2, \frac{N_1 + N_{2}}{N_1 N_2}\Sigma),
\] a taktiež \[
\boldsymbol{1}^\top \big(\overline{\boldsymbol{X}}_{N_1} -
\overline{\boldsymbol{Y}}_{N_2}\big) \sim N_{n}(\boldsymbol{1}^\top
(\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2), \frac{N_1 + N_2}{N_1 N_2}
\cdot \boldsymbol{1}^\top \Sigma \boldsymbol{1}).
\]
Variančná-kovariančná matica \(\Sigma\) je ale obecne neznáma a preto je potrebné ju odhadnúť. Nech \(\mathrm{S}_1\) je výberová variančná-kovariančná matica spočítaná z náhodného výberu \(\boldsymbol{X}_1, \dots, \boldsymbol{X}_{N_1}\) a analogicky \(\mathrm{S}_2\) je výberová variančná-kovariančná matica spočítaná z náhodného výberu \(\boldsymbol{Y}_1, \dots, \boldsymbol{Y}_{N_2}\). Pripomeňme, že platí následujúce: \[ N_1 \mathrm{S}_1 = \mathbb{X}^\top \mathcal{H}_{N_1} \mathbb{X} \sim W_{n}(\Sigma, N_1 - 1) \] a \[ N_2 \mathrm{S}_2 = \mathbb{Y}^\top \mathcal{H}_{N_2} \mathbb{Y} \sim W_{n}(\Sigma, N_2 - 1), \] kde \(\mathbb{X}= (\boldsymbol{X}_1, \dots, \boldsymbol{X}_{N_1})^\top\) a \(\mathbb{Y} = (\boldsymbol{Y}_1, \dots, \boldsymbol{Y}_{N_2})^\top\) a \(\mathcal{H}_{N_1} = \mathbb{I}_{N_1} - \frac{1}{N_1}\boldsymbol{1}_{N_1}\boldsymbol{1}_{N_1}^\top\) a \(\mathcal{H}_m{N_2}= \mathbb{I}_{N_2} - \frac{1}{N_2}\boldsymbol{1}_{N_2}\boldsymbol{1}_{N_2}^\top\) sú tzv. centrovacie štvorcové matice typu \(N_1 \times N_1\) a \(N_2 \times N_2\).
Z vlastnosti Wishartovho rozdelenia a tiež z nezávislosti medzi \(N_1\mathrm{S}_1\) a \(N_2\mathrm{S}_m\) plynie, že \[ N_1 \mathrm{S}_1 + N_2 \mathrm{S}_2 \sim W_{n}(\Sigma, N_1 + N_2 - 2), \] pričom tzv. ``pooled’’ odhad variačnej-kovariačnej matice \(\Sigma\) získame ako \(\mathrm{S}_{N_1 + N_2} = (N_{1} + N_{2})^{-1} \cdot (N_1\mathrm{S}_1 + N_2\mathrm{S}_2)\). Preto tiež platí, že \[ (N_1 + N_2) \boldsymbol{1}_n^\top \mathrm{S}_{N_1 + N_2} \boldsymbol{1}_n \sim W_{1}(\boldsymbol{1}_n^\top \Sigma \boldsymbol{1}_n, N_1 + N_2 - 2), \] čo je vlastne \(\chi^2\) rozdelenie s \(N_1 + N_2 - 2\) stupňami voľnosti (i.e., degrees of freedom).
Test nulovej hypotézy \(H_0\) lze uskutočniť pomocou testovej štatistiky (analogicky, ako v jednorozmernom prípade u klasického \(t\)-testu) \[ T = \frac{N_1 N_2}{N_1 + N_2} (N_1 + N_2 - 2) \cdot \frac{\Big[ \boldsymbol{1}_n^\top (\overline{\boldsymbol{X}}_{N_1} - \overline{\boldsymbol{Y}}_{N_2}) \Big]^2}{\boldsymbol{1}_n^\top \mathrm{S}_{N_1 + N_2} \boldsymbol{1}_n}, \] ktorá ma za platnosti nulovej hypotézy Hotellingovo \(T^2\) rozdelenie s \(1\) a \(N_1 + N_2 - 2\) stupňami voľnosti (čo je vlastne taktiež Fisherovo \(F\) rozdelenie s \(1\) a \(N_1 + N_2 - 2\) stupňami voľnosti).
V prípade, že štatisticky test rovnobežnosti neznámych stredných profilov medzi dvoma skupinami zamietne nulovú hypotézu, tak následný regresný model by mal buď zahrnúť interakčný člen medzi časom (t.j., jednotlivými meraniami uskutočnenými v rámci uvažovaného obdobia) a príslušnými skupinami, prípadne (ako možná alternatíva) uvažovať dva samostatné regresné modely – jeden pre každú z uvažovaných skupín.
V opačnom prípade, ak nulová hypotéza rovnobežnosti stredných
profilov zamietnutá nie je, tak je následne možné pokúsiť sa zo
spoločných dat (obe uvažované skupiny súčastne) urobiť inferenciu
ohľadom celkového efektu v rámci uvažovaného časového obdobia (a to aj v
prípade, že jednotlivé úrovne profilov sú vzájomne odlišné, podstatné
je, že neznáme stredné profily je možné zo štatistického hľadiska
považovať za rovnobežné).
Takáto nulová hypotéza nulovosti príslušného efektu môže byť matematickyvyjadrená ako \[ H_0: \mathbb{C}(\boldsymbol{\mu}_1 + \boldsymbol{\mu}_2) = \boldsymbol{0}, \] kde matica \(\mathbb{C} \in \mathbb{R}^{(n - 1) \times n}\) je matica vájomných kontrastov definovaná predpisom \[ \mathbb{C} = \left( \begin{array}{ccccc} 1 & -1 & 0 & \dots & 0\\ 0 & 1 & -1 & \dots & 0\\ \vdots & \vdots & \ddots & \ddots & \vdots\\ 0 & 0 & \dots & 1 & -1 \end{array} \right). \]
Z formálneho hľadiska sa v podstate jedná o testovanie nulovosti jednotlivých priemerných inkrementov (t.j., priemerné inkrementy v rámci združeného – priemerného profilu). Pre priemerný profil (v prípade datového súboru pacientov so sklerózou sa vlastne jedná o model, ktorý neberie do úvahy informáciu o pohlaví pacienta) platí, že \[ \overline{\boldsymbol{X}}_{N_1 + N_2} = \frac{N_1 \overline{\boldsymbol{X}}_{N_1} + N_2 \overline{\boldsymbol{Y}}_{N_2}}{N_1 + N_2} \sim N_n \Big( \frac{N_1 \boldsymbol{\mu}_1 + N_2 \boldsymbol{\mu}_2}{N_1 + N_2}, \frac{1}{N_1 + N_2} \Sigma \Big). \]
Ak sú longitudinálne profily v rámci oboch skupín vzájomne paralelné
(nulová hypotéza o rovnobežnosti stredných profilov nebola zamietnutá),
tak za platnosti nulovej hypotézy \(H_0\) (t.j. oba profily sú navyše aj
horizontálne) jednoducho platí, že \[
\mathbb{C} \Big( \frac{N_1 \boldsymbol{\mu}_1 + N_2
\boldsymbol{\mu}_2}{N_1 + N_2}\Big) = 0
\] a z vlastnosti normálneho rozdelenia aj \[
\sqrt{N_1 + N_2} \mathbb{C} \overline{\boldsymbol{X}}_{N_1 + N_2} \sim
N_{n}(\boldsymbol{0}, \mathbb{C}^\top \Sigma \mathbb{C}).
\] Použitím príslušnej výberovej matice \(\mathrm{S}_{N_1 + N_2}\) (odhad
variančnej-kovariačnej matice \(\Sigma\)) môžeme definovať testovú
štatistiku \[
T = (N_1 + N_2 -2) \big( \mathbb{C} \overline{\boldsymbol{X}}_{N_1 +
N_2} \big)^\top \Big(\mathbb{C}^\top \mathrm{S}_{N_1 +
N_2}\mathbb{C} \Big)^{-1} \mathbb{C}\overline{\boldsymbol{X}}_{N_1 +
N_2},
\] ktorá má za platnosti nulovej hypotézy \(H_0\) Hotellingovo \(T^2\) rozdelenie s \(n - 1\) a \(N_1 +
N_2 - 2\) stupňami voľnosti (resp. Fisherovo \(F\) rozdelenie s \(n - 1\) a \(N_1 +
N_2 - n\) stupňami voľnosti).
Základné rozdiely medzi “long-data” reprezentáciou (vektor odozvy
\(\boldsymbol{Y} \in
\mathbb{R}^{\mathrm{N}}\) kde \(\mathrm{N} = \sum_{i = 1}^N n_i\)) a
“wide-data” reprezentáciou (matica odozvy \(\mathbb{Y} \in \mathbb{R}^{N \times n}\)) v
rámci regresných modelov formulovaných vyššie, ilustrujeme aj na
reálnych datach. Pre tento účel využijeme (pre jednoduchosť) datový
súbor cars.csv (data lze stiahnúť ako
csv súbor).
Následne data načítame do programu SAS:
libname car '/home/uXXX/sasuser.v94';
filename reffile '/home/uXXX/sasuser.v94/data/cars.csv';
proc import datafile=reffile
dbms=csv
out=car.data
replace;
getnames=yes;
run;
proc print datafile = car.data;
run;
Budeme uvažovať jednoduchý príklad, kde odozva bude dvojrozmerná a
bude predstavovať dve ceny – výrobcom navrhnutú cenu (t.j.,
Manufacturer’s suggested retail price – MSRP) (premenná
MSRP) a skutočnú cenu, za ktorú bolo auto zakúpené (t.j.,
premenná Invoice).
Obe uvedené premenné sú ale v datovom súbore reprezentované ako charakterové hodnoty. Pre účely regresného modelu je potrebné premenné vhodne upraviť, aby nové premenné predstavovali kvantitatívne hodnoty (ceny).
Toho lze dosiahnúť napr. pomocou následujúceho kódu:
data car.data2;
set car.data;
MSRP2 = input(compress(translate(MSRP,"","$,")),best.);
Invoice2 = input(compress(translate(Invoice,"","$,")),best.);
run;
proc print datafile = car.data2;
run;
Pomocou procedúry proc reg alebo procedúry
proc glm môžeme odhadnúť požadovaný regresný model:
proc reg data=car.data2;
model MSRP2 Invoice2 = EngineSize Horsepower;
run;
proc glm data=car.data2;
model MSRP2 Invoice2 = EngineSize Horsepower;
run;
Modely vyššie porovnáme s následujúcimi regresnými modelmi:
proc reg data=car.data2;
model MSRP2 = EngineSize Horsepower;
run;
proc reg data=car.data2;
model Invoice2 = EngineSize Horsepower;
run;
Pomocou nasledujúceho SAS kódu môžeme ešte otestovať nulovú hypotézu,
že regresná priamka pre MSRP cenu a regresná priamka pre skutočnú cenu
(Invoice) sú totožné.
proc reg data=car.data2 corr;
model MSRP2 Invoice2 = EngineSize Horsepower;
mtest intercept, EngineSize, Horsepower, MSRP2-Invoice2;
run;
Ako by analogicky štatistický test vyzeral (a bol implementovaný) v
programe SAS v prípade, že by sa pozorovania reprezetovali v tzv.
long-data type (t.j., pomocou vektoru \(\boldsymbol{Y}\))?
Analogický a v určitom zmysle aj ekvivalentný model dostaneme aj pomocou tzv. long-data formátu, keď vhodne zostavíme regresný model pre vektor závislých pozorovaní \(\boldsymbol{Y}\).
Pre prehľadnosť vyberieme len relevantné premenné:
data car.dataLong;
set car.data2;
keep MSRP2 Invoice2 EngineSize Horsepower;
run;
proc print datafile = car.dataLong;
run;
Data následne upravíme do vhodného formátu:
data car.twoSample;
length Sample $856.;
set car.dataLong;
array numvars[2] MSRP2 Invoice2;
do i = 1 to dim(numvars);
Type = i;
Price = numvars[i];
output;
end;
run;
proc print datafile = car.twoSample;
run;
A pre účely implementácie potrebných interačných členov prípravíme interakčné premenné:
data car.twoSampleInt;
set car.twoSample;
Type2 = Type - 1;
EngineType = Type2 * EngineSize;
HorseType = Type2 * Horsepower;
run;
Výsledný regresný model získame pomocou následjúceho kódu:
proc reg data=car.twoSampleInt;
model Price = Type2 EngineSize Horsepower EngineType HorseType;
run;
Porovnajte odhadnuté parametre, príslušné smerodatné chyby a \(p\)-hodnoty príslušných štatistických testov v regresnom modeli, ktorý bol založený na wide-data type (na matici závislých pozorovaní \(\mathbb{Y}\)) a modeli, ktorý bol vybudovaný pre long-data typ (teda vektor \(\boldsymbol{Y}\) ).
Použijte vhodný datový súbor (napr. datový súbor pacientov so sklerózou multiplex) a pomocou Vami zvoleného programu (napr. SAS, R, alebo Python) explicitne otestujte (t.j. implementujte) štatistický test:
Vypracovanie samostatnej úlohy je parciálnou súčasťou finálneho zápočtového projektu, ktorý bude nutné odovzdať koncom semestra. Vyššie uvedený deadline je nutné rešpektovať v prípade, že študent/študentka má záujem o spätnú väzbu k vypracovaniu daného úkolu. V opačnom prípade bude vypracovaný úkol súčasťou záverečnej zápočtovej práce a bude hodnotený na záver semestru.