sokvaltozos-stat
Download
Report
Transcript sokvaltozos-stat
Rövid bevezetés a sokváltozós
statisztikákba
Összeállította:
Elek Zoltán
Sokváltozós módszerek
Kiterjesztése az egyváltozós és kétváltozós
módszereknek
Egy idejű elemzés/kezelése a faj-mintakörnyezeti változó adatoknak
Sokváltozós adatok…
Egyedek morfometriai adatai (pl.: hossz)
Egyedek fiziológiai adatai (pl.: vérnyomás, pulzus)
Környezeti adatok (pl.: légnyomás, hőmérséklet)
Fajszám, egyedszám stb…
Az adatok általános formulája→ adatmátrix
Szimilaritás (S) a minták között
0 - 100 % vagy 0 - 1
S = 100%, teljes azonosság (identikus
minták)
S = 0, teljesen különböző minták (nincsenek
közös fajok)
Bray-Curtis koefficiens
(Bray & Curtis, 1957)
Első terresztriális ökológiai rendszerekre kifejlesztett
szimilaritás függvény
ahol,
yij - „i”faj egyedszáma a „j” mintában,
yik - „i”faj egyedszáma a „k” mintában,
n - teljes mintászám
SX2 X3 = 100
{1 -
SX3 Y1 = 100
{1 -
3+0+0+2+8
} = 84
11+0+0+14+58
} = 38
0+6+8+2+30
14+6+8+10+36
Faj szimilaritás mátrix
Transzformációk
Megfelelő adatok paraméteres próbákhoz (pl.:
variancia heterogenitás és ANOVA)
Súlyozni a ritka és a gyakori fajok hozzájárulását
nem-paraméteres sokváltozós elemzésekben
Miért?
Súlyozni a ritka és a gyakori fajok
hozzájárulását
A transzformálatlan és transzformált adatok
eltérő eredményeket adhatnak
diszimilaritás számítása során (minták
között)
Hatás az nMDS-re.
Transzformáció sokváltozós
statisztikákban
Közepes gyakoriságú fajok
négyzetgyök
negyedikgyök / Log (1+y)
Prezencia/Abszencia
Nem túl gyakori
bizonytalanság
Ritka fajok
Faj szimilaritás mátrix transzformált
Sokváltozós technikák
A leggyakoribbak:
Klaszter elemzés
Ordináció
Pl.: diszkriminancia elemzés
Klaszter elemzés
A minták csoportokba helyezése (terület,
fajok, vagy környezeti változók) a
hasonlóságuk alapján.
A minták a csoportokon belül jobban
hasonlítanak, mint a csoportok között
Dendrogram
Minták
Ordináció
Grafikus technika
Ordinációs ábra (általában két vagy három
dimenziós)
A pontok közötti relatív távolság arányos a
minták között számított hasonlósággal
Az ordináció típusai
Indirekt grádiens elemzés
Csak biológiai adatok
- faj/abundancia, minta mátrix
A környezeti adatokat ez követően lehet korreláltani a
tengelyekkel
Direkt grádiens elemzés
Környezeti és faj/abundancia adatok
Indirekt grádiens elemzés
Including:
Principle Component Analysis (PCA)
Correspondence Analysis (CA)
Detrended Correspondence Analysis (DCA)
Főkomponens
analízis
Non-metric
Multi-dimensional
Scaling(PCA)
(nMDS)
Direct gradient analysis
Including:
Nem-metrikus skálázás (nMDS)
Redundancy Analysis (RD)
Canonical Correspondence Analysis (CCA)
Detrended Canonical Correspondence Analysis (DCCA)
PCA
Best-fit curve
Eredeti adatok
Első tengely (PC1)
Source: Clarke, K. R. & Warwick, R. M. (1994) Change in Marine Communities: an Approach to Statistical Analysis and
Interpretation.
Plymouth Marine Laboratory, Plymouth: 144pp.
forgatás
Második tengely (PC2)
– merőleges a PC1
(i.e. korrelálatlan / ortogonális)
Harmadik tengely (PC3)
Eigenvalues
PC Eigenvalues
1
3.39
2
0.92
3
0.56
4
0.11
5
0.02
%Variation
67.8
18.4
11.2
2.1
0.5
Cum.%Variation
67.8
86.1
97.4
99.5
100.0
Eigenvectors
(Coefficients in the linear combinations of variables
making up PC's)
Species
Variable
A
B
C
D
E
PC1
0.269
0.521
0.515
-0.499
-0.377
PC2
0.823
-0.264
-0.226
0.227
-0.388
PC3
0.485
-0.018
0.082
-0.292
0.820
PC4
-0.088
-0.143
-0.635
-0.739
-0.150
PC5
-0.092
-0.799
0.523
-0.261
-0.109
Total Vari ance Ex pla ined
Component
1
2
3
4
Total
2.077
1.463
.351
.108
Initial Eigenvalues
% of Variance Cumulative %
51.936
51.936
36.585
88.521
8.769
97.290
2.710
100.000
Ex trac tion Sums of Squared Loadings
Total
% of Variance Cumulative %
2.077
51.936
51.936
1.463
36.585
88.521
Ex trac tion Met hod: Principal Component Analys is.
3
a
A
B
C
D
REGR factor score 2 for analysis
1
Component Matrix
Component
1
2
.372
.842
.889
-.391
.851
-.445
.651
.635
2
1
0
Extraction Method: Principal Component Analysis.
a. 2 components extracted.
Season
-1
Component Matrix
1.00
Dry
PCA 2 (36.6 %varaiance)
A
0.75
-2
D
Wet
-1.5
-1.0
-.5
0.0
.5
1.0
0.50
REGR factor score 1 for analysis
0.25
0.00
-0.25
C
-0.50
-1.0
B
-0.5
0.0
0.5
PCA1 (51.9% variance)
1.0
1
1.5
2.0
PCA feltételek
Lineális összefüggés a változók között
A változók normalitása
Az ökológiai adatok ritkán felelnek meg
ezeknek a feltételeknek…
Sokdimenziós skálázás (MDS)
Sokváltozós adatelemzési technika,
A minták közötti összefüggések vizualizálása,
alacsony (két) dimenziós térben
Két típus: metrikus és nem-metrikus
Metrikus MDS:
- Adatok-intervallum vagy arányskála
- kvantitatív
nem-metrikus MDS (nMDS)
- Rang-jellegű adatok
- kvantitatív vagy kvalitatív
Előnyök - nMDS
Az ordináció rang-jellegű
szimilraritás/diszimilaritás adatokon
alapszik a mintákra vonatkoztatva
Ordinális skálás adatok is használhatók
Bray-Curtis similarity
from Clarke & Warwick, 1994
Példa….
Urbanizáció és futóbogarak
Távolság mátrixok…
dist…
dist <- dist(dk, method=„…”)
dist(x, method= "euclidean",diag=FALSE, upper=FALSE, p=2)
euclidean:
Usual square distance between the two vectors (2 norm).
maximum:
Maximum distance between two components of x and y (supremum norm)
manhattan:
Absolute distance between the two vectors (1 norm).
canberra:
sum(|x_i - y_i| / |x_i + y_i|). Terms with zero numerator and
denominator are omitted from the sum and treated as if the values
were missing.
binary:
(aka asymmetric binary): The vectors are regarded as binary bits, so
non-zero elements are ‘on’ and zero elements are ‘off’. The distance
is the proportion of bits in which only one is on amongst those in
which at least one is on.
minkowski:
The p norm, the pth root of the sum of the pth powers of the
differences of the components.
Távolság mátrixok…
vegdist…
dk.dist <vegdist(dk,
method=„…”)
vegdist(x, method="bray„, binary=FALSE, diag=FALSE,
upper=FALSE, na.rm=FALSE,...)
euclidean d[jk] = sqrt(sum (x[ij]-x[ik])^2)
manhattan d[jk] = sum(abs(x[ij] - x[ik]))
gower d[jk] = (1/M) sum (abs(x[ij]-x[ik])/(max(x[i])-min(x[i])) where M is the number
of columns (excluding missing values)
canberra d[jk] = (1/NZ) sum ((x[ij]-x[ik])/(x[ij]+x[ik])) where NZ is the number of
non-zero entries.
bray d[jk] = (sum abs(x[ij]-x[ik])/(sum (x[ij]+x[ik]))
kulczynski d[jk] 1 - 0.5*((sum min(x[ij],x[ik])/(sum x[ij]) + (sum
min(x[ij],x[ik])/(sum x[ik]))
morisita {d[jk] = 2*sum(x[ij]*x[ik])/((lambda[j]+lambda[k]) * sum(x[ij])*sum(x[ik])) }
where lambda[j] = sum(x[ij]*(x[ij]-1))/sum(x[ij])*sum(x[ij]-1)
horn Like morisita, but lambda[j] = sum(x[ij]^2)/(sum(x[ij])^2)
binomial d[jk] = sum(x[ij]*log(x[ij]/n[i]) + x[ik]*log(x[ik]/n[i]) n[i]*log(1/2))/n[i] where n[i] = x[ij] + x[ik]
Klaszter elemzés
library(vegan)
setwd("c:/!myR/anosim")
dk<-read.table("dk-04.txt",header=T)
attach(dk)
names(dk)
fix(dk)
dk.env<-read.table("dk-env-04.txt",header=T)
dk.env$Area<-factor(dk.env$Area)
dk.env$sites<-factor(dk.env$sites)
dk.env$traps<-factor(dk.env$traps)
attach(dk.env)
names(dk.env)
fix(dk.env)
str(dk)
dk.dist <- vegdist(dk)
x<-hclust(dk.dist, method = "ward")
plot(x, hang=-1)
34
35
98
99
8
9
22
13
30
21
24
6
11
12
1
4
14
19
2
15
33
5
27
3
20
28
38
40
29
32
37
39
7
26
50
47
48
31
36
25
10
18
23
17
42
16
46
43
44
45
59
60
51
57
65
68
61
62
74
53
63
70
58
64
69
73
67
79
103
49
66
102
112
117
104
110
106
116
108
114
109
119
105
120
107
115
97
94
96
41
91
92
100
72
76
71
54
56
75
78
55
80
52
77
113
118
88
95
101
111
93
81
86
84
85
90
87
82
83
89
0
5
Height
10
15
Cluster Dendrogram
dk.dist
hclust (*, "ward")
PCA
require(graphics)
(pc.cr <- princomp(dk))
princomp(dk, cor = TRUE)
summary(pc.cr <- princomp(dk, cor = TRUE))
loadings(pc.cr)
par(mfrow=c(1,2), pty="s")
plot(pc.cr)
biplot(pc.cr)
------------------------------------------------------------------------------------Importance of components:
Comp.1
Comp.2
Comp.3
Standard deviation
1.2557374 0.9900492 0.6655269
Proportion of Variance 0.5256255 0.3267325 0.1476420
Cumulative Proportion 0.5256255 0.8523580 1.0000000
-10
5
37
39 leistferr
notbigutt
agpic
carcor
abpara
58
75
36
carhort
carviol
56
59
61
112
104
carcon
116
55
54
120
115
57
71
505stompum
60
65
68
97
107
114
111
80
105
43
1113
63
64
70
74
62
52
67
77
106
119
83
82
103
69
73
79
102
109
118
78
88
72
81
110
95
leistruf
29
53
85
84
90
93
117
49
101
87
86
89
108
66
76
91
31
46
17
16
13
42
41
94
synchviv
cychcar
18
48
100
26
harla
712
30
210
592
44
24
haraff
21
47
pterlep
5
leistterm
945
15
28
432
trechquadr
11
9699
98
19
614
27
23
notruf
calrotund
22
carnem
2
badbullatus
20318
pteroblo
pternig
agalbipes
bembtetra
harruf lorpil
0.4
0.0
34
elaphruscup
platdor
nebbrev
-5
-0.4
-0.2
Comp.2
4
3
platass
ptervern
trechsec
agmuelleri
ptermel
35
-0.6
2
0
-10
1
5
badsodalis
0.2
6
5
0
agduftschmid
38
pternigrita 40
patatrobembbigutt
pterstrenuus
cargran
clivfoss
33
Variances
-5
0
pc.cr
Comp.1
Comp.3
Comp.5
Comp.7
Comp.9
-0.6
-0.4
-0.2
Comp.1
0.0
0.2
0.4
pc.cr
-5
0
5
10
5
0.2
10
0.4
1.5
-10
Comp.2
Comp.3
-0.4
-0.2
0.0
Comp.1
0.2
0
-5
-0.2
urban.9
carnem
suburban.36
-0.4
0.0
Comp.1
-10
0.0
urban.35
forest.18
urban.8
urban.28
urban.5
suburban.7
forest.17
forest.16 urban.20
forest.11
suburban.10
forest.40
urban.7
forest.15
forest.20
forest.33
forest.38
forest.35
suburban.17
suburban.20
suburban.19
suburban.26
suburban.25
suburban.28
urban.29
urban.32
forest.21
forest.23
forest.30
forest.36
forest.27
forest.34
urban.36
urban.34 nebbrev
forest.14
suburban.5
urban.39
forest.7
forest.8
forest.32
urban.26
forest.25
suburban.11
suburban.9
urban.37
forest.24
forest.29
forest.31
suburban.1
forest.12
suburban.8
urban.30
suburban.30
suburban.24
forest.26
urban.27
ptermel
suburban.4
urban.3
urban.22
forest.39
urban.40
forest.22
suburban.13
suburban.18
urban.17
forest.19
forest.3
suburban.6
suburban.15
suburban.29
suburban.34
urban.6
suburban.2
forest.37
suburban.3
urban.4
suburban.23
urban.38
urban.31
urban.25
suburban.31
urban.24
forest.13
urban.18
urban.21
urban.13
suburban.21
forest.5
forest.1
forest.9
suburban.14
suburban.27
suburban.33
forest.10
suburban.39
urban.16
forest.6urban.1
suburban.22
urban.12
urban.19
urban.10
suburban.12
forest.2
urban.11
suburban.16
urban.14
suburban.37
urban.23 urban.15
urban.2
suburban.40
suburban.32
suburban.38
suburban.35
forest.4
forest.28
0.5
Comp.2
Variances
1.0
urban.33
0.4
Metrikus-MDS
require(graphics)
dk.dist <- vegdist(dk)
loc <- cmdscale(dk.dist)
x <- loc[,1]
y <- -loc[,2]
plot(x, y, type="n", xlab="1st Axis", ylab="2nd Axis", main="cmdscale(dk.dist)",
cex=1.8, family="serif")
text(x, y, rownames(loc), cex=0.8, family="serif")
0.4
cmdscale(dk.dist)
120
0.2
115
107
108 119
118
105109
117
82
102 114
113 106116110
90
112
104
87
83
89
94
100
81
0.0
98
28275 2 30
20
22
1119
511
14
12
24
461332189 7 34
26
33 35
17 23
18 10
25
47
39
99
92
56
72
45
101
111
88
86
97
91
80
55 77
93
42
16
48
-0.2
41
71
54
52
3229
44 50
40
3846
103
36
78
31
43
79
37
66
64
67 58
75
73
6169
49
-0.4
2nd Axis
84 85
76 95
96
51
62
63
74
-0.4
-0.2
0.0
1st Axis
0.2
70
57
596865
53
60
0.4
Nem-metrikus MDS
library(MASS)
dk.dist <- vegdist(dk)
dk.mds <- isoMDS(dk.dist)
plot(dk.mds$points, type = "n",cex=0.8, family="serif")
text(dk.mds$points, labels = as.character(1:nrow(dk)),cex=0.8, family="serif")
29
32
1.0
37
36
31
38
49
66
0.5
40
74
63 53
48
39
43
16
25
47
7
0.0
26
17
1810
23
33
22
62
42
91
41
92
97
100
94
96
99
34
93
5552
77
86
8054
88
81
71
89 85 72 56 111
95
101
87 90 84 76
83
112
82
106 104
102 113
110
117
116
119118
114
109
107
120 115 105
108
35
-1.0
-0.5
51
70
75
58
7967 64
78
45 44
98
8
69
73 61
46
4 21
24
6
11913
30
20 14
28 15 1211
3 27
5 2 9
-0.5
dk.mds$points[,2]
50
0.0
dk.mds$points[,1]
0.5
60
59
68
65
57
103
Anosim – Analysis of Similarity
Ha két minta fajösszetétele valóban különbözik, akkor a csoportok
közötti disszimilaritás nagyobb mint a csoportok(on) belül.
Az anosim R értéke a csoportok közötti rangok különbségén alapszik
A módszer közvetlenül a távolságmátrixból számol.
R = (r_B - r_W)/(N (N-1) / 4)
Ahol, (r_B)- Csoportok között; (r_W)- csoporton belül
R (-1 ... +1), ahol 0 – teljesen random csoportosulás
Anosim…
library(vegan)
setwd("c:/!myR/anosim")
dk<-read.table("dk-04.txt",header=T)
attach(dk)
names(dk)
fix(dk)
dk.env<-read.table("dk-env-04.txt",header=T)
dk.env$Area<-factor(dk.env$Area)
dk.env$sites<-factor(dk.env$sites)
dk.env$traps<-factor(dk.env$traps)
attach(dk.env)
names(dk.env)
fix(dk.env)
str(dk)
dk.dist <- vegdist(dk)
attach(dk.env)
dk.ano <- anosim(dk.dist, sites)
summary(dk.ano)
plot(dk.ano)
savePlot(filename="dk-04a", type=c("emf"))
0
1000
2000
3000
4000
5000
6000
7000
R = 0.594 , P = < 0.001
Between
forest
suburban
urban
Anosim - results
Call:
anosim(dis = dk.dist, grouping = sites)
Dissimilarity: bray
ANOSIM statistic R: 0.5944
Significance: < 0.001
Based on
1000
permutations
Empirical upper confidence limits of R:
90%
95% 97.5%
99%
0.0160 0.0228 0.0287 0.0361
Dissimilarity ranks
0%
25%
Between 26 2835.75
forest
5 418.50
suburban 1 889.25
urban
19 1040.25
between and within classes:
50%
75%
100%
N
4439.0 5821.50 6906.0 4800
1020.5 1902.50 4634.0 780
2060.5 3625.50 6297.5 780
2205.0 4352.25 6906.0 780
Irodalom
Podani János, 1997. Bevezetés a többváltozós
biológiai adatfeldolgozás rejtelmeibe. Scientia
Kiadó, Budapest
Drs. Alan S.L. Leung and Kenneth M.Y. Leung,
2008. An Introduction to
Multivariate Analysis. (lectures 14-15.)
Dr. Michael R. Hyman, 2008. Brief introduction to
mutlivariate statistics. (supplementary material)