Matice
Vytvorenie matíc
m <- matrix(1:9, nrow = 3, ncol = 3)
m_byrow <- matrix(1:9, nrow = 3, byrow = TRUE)
m; m_byrow
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
Rozmery matice
[1] 3 3
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
Adresovanie prvkov matice
[1] 8
[1] 1 2 3
[1] 1 4 7
[,1] [,2]
[1,] 6 3
[2,] 5 2
[3,] 4 1
Maticové operácie
A <- matrix(c(5,10,11,2), nrow = 2)
B <- matrix(c(34,1,22,2), nrow = 2)
A + B
[,1] [,2]
[1,] 39 33
[2,] 11 4
[,1] [,2]
[1,] 170 242
[2,] 10 4
[,1] [,2]
[1,] 181 132
[2,] 342 224
[,1] [,2]
[1,] 5 10
[2,] 11 2
[1] -100
[,1] [,2]
[1,] -0.02 0.11
[2,] 0.10 -0.05
Zlučovanie vektorov do matíc
C <- cbind(1:4, 5:6)
D <- rbind(2:3, 4:7)
C; D
[,1] [,2]
[1,] 1 5
[2,] 2 6
[3,] 3 5
[4,] 4 6
[,1] [,2] [,3] [,4]
[1,] 2 3 2 3
[2,] 4 5 6 7
Vypočítanie zvolenej štatistiky po riadkoch (stĺpcoch) matice
M <- matrix(1:15, nrow = 5)
M
[,1] [,2] [,3]
[1,] 1 6 11
[2,] 2 7 12
[3,] 3 8 13
[4,] 4 9 14
[5,] 5 10 15
[1] 15 40 65
[1] 6 7 8 9 10
Malé cvičenie
Vytvorte maticu 6x6 s hodnotami po riadkoch 1..36, vypočítajte
stĺpcové sumy a súčin matíc \(M^t
M\).
M2 <- matrix(1:36, nrow = 6, byrow = TRUE)
colSums(M2)
[1] 96 102 108 114 120 126
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 2166 2262 2358 2454 2550 2646
[2,] 2262 2364 2466 2568 2670 2772
[3,] 2358 2466 2574 2682 2790 2898
[4,] 2454 2568 2682 2796 2910 3024
[5,] 2550 2670 2790 2910 3030 3150
[6,] 2646 2772 2898 3024 3150 3276
Premenovanie riadkov a stĺpcov
m <- matrix(1:9, nrow = 3, ncol = 3)
rownames(m) <- c("1.riadok","2.riadok","3.riadok")
colnames(m) <- c("1.stĺpec","2.stĺpec","3.stĺpec")
m
LS0tCnRpdGxlOiAiVmVrdG9yeSBhIE1hdGljZSIKYXV0aG9yOiAiTW9uaWthIFN6xbFjc292w6EgIDxicj4iCmRhdGU6ICJPa3TDs2JlciAyMDI1IgpvdXRwdXQ6IAogIGh0bWxfbm90ZWJvb2s6CiAgICB0b2M6IHRydWUKICAgIHRvY19mbG9hdDogdHJ1ZQogICAgdGhlbWU6IGNvc21vCiAgICBoaWdobGlnaHQ6IGhhZGRvY2sKZWRpdG9yX29wdGlvbnM6IAogIG1hcmtkb3duOiAKICAgIHdyYXA6IDcyCi0tLQojIE51bWVyaWNrw6kgdmVrdG9yeQoKIyMgR2VuZXJvdmFuaWUgdmVrdG9yb3YKCmBgYHtyfQp2MSA8LSBjKDQsNywxMCwxMykKdjIgPC0gMTA6MSAgICAgICAgICAgICAgICAgCnYzIDwtIHNlcShmcm9tID0gMTUsIHRvID0gMjAsIGJ5ID0gMC41MCkgCnY0IDwtIHJlcCg0LCB0aW1lcyA9IDMpICAgCnY1IDwtIHJ1bmlmKDIpICAgICAgICAgICAgCnY2IDwtIHJub3JtKDUpICAgICAgICAgICAgCnYxOyB2MjsgdjM7IHY0OyB2NTsgdjYKYGBgCgojIyBBcml0bWV0aWNrw6kgb3BlcsOhY2llIHMgdmVrdG9ybWkKCmBgYHtyfQp2IDwtIGMoMjAsIDIyLCAyNCwgMjYpCnYgKyA1ICAgICAgICAgICAKdiAqIDIgICAgICAgICAgICAKKHYgKyA0KSAvIDIKZXhwKHYpICAgICAgICAgICAKc3VtKGMoNSw2LDcpLGMoMiwyLDIpKSAgICAgICAgICAKY3Jvc3Nwcm9kKGMoNSw2LDcpLGMoMiwyLDIpKSAgIApjKDUsNiw3KSpjKDIsMiwyKSAgICAgICAgICAgICAgIApgYGAKCiMjIE1hdGVtYXRpY2vDqSBvcGVyw6FjaWUgcyAyIHZla3Rvcm1pIHJvdm5ha8OpaG8gcm96bWVydQoKYGBge3J9Cmxlbmd0aChjKDYsNykpCmxlbmd0aCh2NSkgICAgICAgICAgICAKYyg2LDcpICsgdjUgICAgCmBgYAoKIyMgSW5kZXhvdmFuaWUgYSB2w71iZXIgbmlla3RvcnljaCBwcnZrb3YgdmVrdG9yYQoKYGBge3J9CnggPC0gYyg3LCA4MSwgNCwgMywgNTUsIDAsIDIsIDIzKQp4WzJdICAgICAgICAgICAKeFs1OjhdICAgICAgICAgCnhbLThdICAgICAgICAgIAp4W3ggPCAxNV0gICAgICAKd2hpY2goeCA+IDMwKSAgCmBgYAoKIyMgUHLDoWNhIHMgY2jDvWJhasO6Y2ltaSBob2Rub3RhbWkKCmBgYHtyfQp5IDwtIGMoNiwgTkEsIDksIE5BLCAxNSkKaXMubmEoeSkKbWVhbih5KSAgICAgICAgICAgICAgICAKbWVhbih5LCBuYS5ybSA9IFRSVUUpICAgCmBgYAoKIyMgWsOha2xhZG7DqSDFoXRhdGlzdGlreSBhIHVzcG9yaWFkYW5pZSBwcnZrb3YgdmVrdG9yYSBwb2TEvmEgdmXEvmtvc3RpCgpgYGB7cn0KeiA8LSBjKDUwLCA1LCAxLCA4MSwgMSkKbWVhbih6KSAgICAgICAgICAgICAgICAgCnNkKHopICAgICAgICAgICAgICAgICAKbWF4KHopICAgICAgICAgICAgICAgICAgCnN1bW1hcnkoeikgICAgICAgICAgICAgCnNvcnQoeikgICAgICAgICAgICAgICAgIApzb3J0KHosIGRlY3JlYXNpbmcgPSBUUlVFKSAgCmBgYAoKIyMgTWFsw6kgY3ZpxI1lbmllCj4gVnl0dm9ydGUgdmVrdG9yIGB3YCBzIMSNw61zbGFtaSAxLi4xNSBhIHZ5cG/EjcOtdGFqdGUgc3VtdSB2xaFldGvDvWNoIHDDoXJueWNoIMSNw61zZWwuCgpgYGB7cn0KdyA8LSAxOjE1CnN1bSh3W3cgJSUgMiA9PSAwXSkKYGBgCgo+VHJpZWRlbmllIHZla3RvcmEgKHZ6b3N0dXBuZSBhIHpvc3R1cG5lKQoKYGBge3J9Cgp2MyA8LSBjKDQ1LCAxMiwgNzgsIDM0LCA1KQoKc29ydCh2MykgICAgICAgICAgICAgICAgICAgICAgICMgdnpvc3R1cG5lCnNvcnQodjMsIGRlY3JlYXNpbmcgPSBUUlVFKSAgICAjIHpvc3R1cG5lCmBgYAotLS0KCiMgTWF0aWNlCgojIyBWeXR2b3JlbmllIG1hdMOtYwoKYGBge3J9Cm0gPC0gbWF0cml4KDE6OSwgbnJvdyA9IDMsIG5jb2wgPSAzKSAgICAgICAgICAgCm1fYnlyb3cgPC0gbWF0cml4KDE6OSwgbnJvdyA9IDMsIGJ5cm93ID0gVFJVRSkgIAptOyBtX2J5cm93CmBgYAoKIyMgUm96bWVyeSBtYXRpY2UKCmBgYHtyfQpkaW0obSkgICAgICAgICAgICAgICAgICAKbQpgYGAKCiMjIEFkcmVzb3ZhbmllIHBydmtvdiBtYXRpY2UKCmBgYHtyfQptWzIsIDNdICAgICAgCm1bICwgMV0gICAgICAKbVsxLCBdICAgICAgIAptWzM6MSwgMjoxXSAgCmBgYAoKIyMgTWF0aWNvdsOpIG9wZXLDoWNpZQoKYGBge3J9CkEgPC0gbWF0cml4KGMoNSwxMCwxMSwyKSwgbnJvdyA9IDIpCkIgPC0gbWF0cml4KGMoMzQsMSwyMiwyKSwgbnJvdyA9IDIpCgpBICsgQiAgICAgICAKQSAqIEIgICAgICAgCkEgJSolIEIgICAgICAKdChBKSAgICAgICAgIApkZXQoQSkgICAgICAgCnNvbHZlKEEpICAgIApgYGAKCiMjIFpsdcSNb3ZhbmllIHZla3Rvcm92IGRvIG1hdMOtYyAKCmBgYHtyfQpDIDwtIGNiaW5kKDE6NCwgNTo2KSAgCkQgPC0gcmJpbmQoMjozLCA0OjcpICAKQzsgRApgYGAKCiMjIFZ5cG/EjcOtdGFuaWUgenZvbGVuZWogxaF0YXRpc3Rpa3kgcG8gcmlhZGtvY2ggKHN0xLpwY29jaCkgbWF0aWNlCgpgYGB7cn0KTSA8LSBtYXRyaXgoMToxNSwgbnJvdyA9IDUpCk0KYXBwbHkoTSwgMiwgc3VtKSAgIAphcHBseShNLCAxLCBtZWFuKSAgCmBgYAoKIyMgTWFsw6kgY3ZpxI1lbmllCgo+IFZ5dHZvcnRlIG1hdGljdSA2eDYgcyBob2Rub3RhbWkgcG8gcmlhZGtvY2ggMS4uMzYsIHZ5cG/EjcOtdGFqdGUgc3TEunBjb3bDqSBzdW15IGEgc8O6xI1pbiBtYXTDrWMgXChNXnQgTVwpLgoKYGBge3J9Ck0yIDwtIG1hdHJpeCgxOjM2LCBucm93ID0gNiwgYnlyb3cgPSBUUlVFKQpjb2xTdW1zKE0yKQp0KE0yKSAlKiUgTTIKYGBgCgo+IFByZW1lbm92YW5pZSByaWFka292IGEgc3TEunBjb3YKCmBgYHtyfQptIDwtIG1hdHJpeCgxOjksIG5yb3cgPSAzLCBuY29sID0gMykKcm93bmFtZXMobSkgPC0gYygiMS5yaWFkb2siLCIyLnJpYWRvayIsIjMucmlhZG9rIikKY29sbmFtZXMobSkgPC0gYygiMS5zdMS6cGVjIiwiMi5zdMS6cGVjIiwiMy5zdMS6cGVjIikKbQpgYGAKCi0tLQoKCgoKCgo=