Slovník | Vyhledávání | Mapa webu
 
Základy informatiky pro biologyVýpočetní matematické systémy Výuka jazyka R Vektory Délka a změna délky vektoru

Logo Matematická biologie

Délka a změna délky vektoru

Každý vektor má svou délku, což je počet jeho prvků. Ke zjištění délky definovaného vektoru slouží funkce length().

Každý prázdný objekt je nějakého datového typu. Např. příkazem

> numeric()
[1] numeric(0)

vytvoříme prázdný numerický vektor, analogicky příkazem character() vytvoříme prázdný textový vektor, atd. K již existujícímu objektu libovolné délky můžeme přidávat nové složky, a to jednoduše umístěním indexu hodnoty do hranaté závorky. Tak příkazem u[2] <- 5 vytvoříme nový vektor u délky 2 (1. složka není známa, má tedy hodnotu NA, 2. složka má hodnotu 5). Tento příkaz můžeme použít pro jakoukoliv strukturu za předpokladu, že datový typ přidávaných prvků je shodný s datovým typem objektu.

Naopak, ke zkrácení délky objektu je třeba jen operátor přiřazení <-, kde za název proměnné umístíme do hranatých závorek ty indexy prvků, které nás zajímají. Symbol záporného znaménka před vektorem indexů v hranatých závorkách určuje ty hodnoty, které nemají být vypsány na výstupu.

> u <- 5:12
[1]    5    6    7    8    9    10    11    12
> length(u)
[1]    8
> u[c(1, 3, 5)]    vypíše 1., 3. a 5. prvek vektoru u
[1]    5    7    9
> u[-c(1, 3, 5)]    vynechá 1., 3. a 5. prvek vektoru u
[1]    6    8    10    11    12

V případě, že chceme získat prvních n složek vektoru, použijeme příkaz length(v) <- n. Stejným způsobem můžeme i prodlužovat vektory, přidané pozice budou mít hodnotu NA.

> length(u) <- 3
> u    přesvědčíme se, že vektor u opravdu obsahuje jen původní 3 složky
[1]    5    6    7

Pracujme opět s vektorem u <- 5:12. Analogickými příkazy k výše uvedenému může být u[c(1,2,3)], u[1:3], head(u,3).

> (w <- head(u,3))
[1]    5    6    7
> length(w) <- 5
> w

[1]    5    6    7    NA    NA

 

 
vytvořil Institut biostatistiky a analýz Lékařské fakulty Masarykovy univerzity