R vektory
vektory
Vektor je jednoduše seznam položek, které jsou stejného typu.
Chcete-li zkombinovat seznam položek do vektoru, použijte c()
funkci a oddělte položky čárkou.
V níže uvedeném příkladu vytvoříme vektorovou proměnnou nazvanou ovoce , která kombinuje řetězce:
Příklad
# Vector of strings
fruits <- c("banana", "apple", "orange")
# Print fruits
fruits
V tomto příkladu vytvoříme vektor, který kombinuje číselné hodnoty:
Příklad
# Vector of numerical
values
numbers <- c(1, 2, 3)
# Print numbers
numbers
Chcete-li vytvořit vektor s číselnými hodnotami v sekvenci, použijte :
operátor:
Příklad
# Vector with numerical values in a sequence
numbers <-
1:10
numbers
Můžete také vytvořit číselné hodnoty s desetinnými místy v sekvenci, ale uvědomte si, že pokud poslední prvek do sekvence nepatří, nebude použit:
Příklad
# Vector with numerical
decimals in a sequence
numbers1 <-
1.5:6.5
numbers1
# Vector with numerical
decimals in a sequence where the last element is not used
numbers2 <-
1.5:6.3
numbers2
Výsledek:
[1] 1.5 2.5 3.5 4.5 5.5 6.5
[1] 1.5 2.5 3.5 4.5 5.5
V níže uvedeném příkladu vytvoříme vektor logických hodnot:
Příklad
# Vector of logical values
log_values <-
c(TRUE, FALSE, TRUE, FALSE)
log_values
Délka vektoru
Chcete-li zjistit, kolik položek má vektor, použijte length()
funkci:
Příklad
fruits <- c("banana", "apple", "orange")
length(fruits)
Seřadit vektor
Chcete-li seřadit položky ve vektoru abecedně nebo číselně, použijte sort()
funkci:
Příklad
fruits <- c("banana", "apple", "orange", "mango", "lemon")
numbers <- c(13, 3, 5, 7, 20, 2)
sort(fruits)
# Sort a string
sort(numbers) # Sort numbers
Přístup k vektorům
K vektorovým položkám se dostanete odkazem na jejich indexové číslo v závorkách []
. První položka má index 1, druhá položka má index 2 a tak dále:
Příklad
fruits <- c("banana", "apple", "orange")
# Access the first item (banana)
fruits[1]
Můžete také přistupovat k více prvkům odkazem na různé pozice indexu pomocí c()
funkce:
Příklad
fruits <- c("banana", "apple", "orange",
"mango", "lemon")
# Access the first and third item
(banana and orange)
fruits[c(1, 3)]
Pro přístup ke všem položkám kromě uvedených můžete také použít záporná indexová čísla:
Příklad
fruits <- c("banana", "apple", "orange", "mango", "lemon")
# Access all
items except for the first item
fruits[c(-1)]
Změnit položku
Chcete-li změnit hodnotu konkrétní položky, podívejte se na číslo indexu:
Příklad
fruits <- c("banana", "apple", "orange", "mango", "lemon")
# Change
"banana" to "pear"
fruits[1] <- "pear"
# Print fruits
fruits
Opakujte vektory
Pro opakování vektorů použijte rep()
funkci:
Příklad
Opakujte každou hodnotu:
repeat_each <- rep(c(1,2,3), each = 3)
repeat_each
Příklad
Opakujte sekvenci vektoru:
repeat_times <- rep(c(1,2,3), times = 3)
repeat_times
Příklad
Opakujte každou hodnotu nezávisle:
repeat_indepent <- rep(c(1,2,3), times = c(5,2,1))
repeat_indepent
Generování sekvenovaných vektorů
Jeden z příkladů nahoře vám ukázal, jak vytvořit vektor s číselnými hodnotami v sekvenci s :
operátorem:
Příklad
numbers <-
1:10
numbers
Chcete-li dělat větší nebo menší kroky v sekvenci, použijte seq()
funkci:
Příklad
numbers <- seq(from = 0, to = 100, by = 20)
numbers
Poznámka: Funkce seq()
má tři parametry: from
kde sekvence začíná, to
kde se sekvence končí, a by
je to interval sekvence.