V tomto článku se podíváme, jak v jazyce R vytvořit matice a jak s nimi pracovat.

Matice je množina prvků uspořádaných do řádků a sloupců. Maticí o rozměru 2x3 chápeme matici, která má dva řádky a tři sloupce.

Příklad 1: Vytvoření matice

K vytvoření matice používáme funkci matrix. Prvním argumentem této funkce je výčet prvků, které má matice obsahovat. Dále musíme specifikovat rozměr matice: buď tedy funkci matrix zadáme požadovaný počet řádků argumentem nrow, nebo požadovaný počet sloupců argumentem ncol.

Představme si například, že chceme vytvořit matici s názvem mojeMatice, kde budou čísla od 1 do 20 poskládaná ve čtyřech řádcích (čili pěti sloupcích). Výčet prvků od 1 do 20 můžeme v R vytvořit příkazem seq(1, 20). Celý příkaz k vytvoření požadované matice tedy vypadá následovně:

Příkaz může vypadat i následovně:

V obou případech získáme následující matici.

Vidíme, že čísla se do matice „vkládají“ po sloupcích. Pokud bychom chtěli, aby se vkládala po řádcích (tedy například aby první řádek měl podobu 1 2 3 4 5), pak musíme do funkce matrix přidat volitelný argument byrow = TRUE.

Příklad 2: Operace s maticemi

S maticemi můžeme v R pochopitelně provádět všechny běžné operace. Pokud k matici přičteme nějaké číslo nebo ji nějakým číslem vynásobíme, aplikuje se tato operace na každý prvek matice jednotlivě. Například:

Kdybychom použili příkaz mojeMatice * mojeMatice, vynásobil by se tedy první prvek matice mojeMatice s prvním, druhý s druhým apod. Pokud bychom chtěli provést „skutečné“ násobení matic, je třeba operátor ohraničit procenty. Můžeme například vynásobit naši matici maticí k ní transponovanou takto:

Vidíme, že transpozici provádíme funkcí t. Transpozice matice znamená prohození řádků a sloupců (první řádek matice je prvním sloupcem matice k ní transponované apod.).

Příklad 3: výběr z matice

Z matice můžeme chtít vybrat pouze určitý řádek, sloupec či prvek. Prvek na třetím řádku a ve druhém sloupci vybereme takto:

Indexy prvku tedy zadáváme do hranatých závorek, a to tak, že prvním indexem je číslo řádku a druhým číslo sloupce.

Chceme-li zobrazit celý třetí řádek, postupujeme tak, že místo indexu sloupce necháme prázdné místo:

 Analogicky získáme například druhý sloupec. Prázdný tentokrát zůstane index řádku.

Určitý prvek v matici můžeme změnit tak, že mu přiřadíme jinou hodnotu. Například prvek ve třetím řádku a druhém sloupci přepíšeme na hodnotu 1000 následovně:

Napsat komentář

Vaše emailová adresa nebude publikována.

*

smazat formulářOdeslat komentář