Guida per Principianti sui Vettori in R
Ciao a tutti, futuri programmatori R! Oggi ci imbarcheremo in un viaggio emozionante nel mondo dei vettori in R. Non preoccupatevi se non avete mai programmato prima - sarò il vostro guida amichevole, e prenderemo tutto passo per passo. Alla fine di questo tutorial, sarete in grado di creare e manipolare vettori come un professionista!
Cos'è un Vettore?
Prima di immergerci, capiremo cos'è un vettore. In R, un vettore è come un contenitore che contiene più elementi dello stesso tipo. Pensa a esso come a un treno con diversi carri, ognuno dei quali trasporta lo stesso tipo di carico. Questo carico potrebbe essere numeri, testi o persino valori logici (vero/falso).
Creazione di Vettori
Iniziamo imparando come creare vettori. Ci sono diversi modi per farlo in R, ma ci concentreremo sui metodi più comuni e utili.
Utilizzo della funzione c()
Il modo più diretto per creare un vettore è utilizzare la funzione c()
. La lettera 'c' sta per 'combinare' o 'concatenare'.
# Creazione di un vettore numerico
numbers <- c(1, 2, 3, 4, 5)
print(numbers)
# Creazione di un vettore di caratteri
fruits <- c("apple", "banana", "cherry")
print(fruits)
# Creazione di un vettore logico
is_student <- c(TRUE, FALSE, TRUE, TRUE)
print(is_student)
In questi esempi, stiamo creando tre tipi diversi di vettori. Il simbolo <-
viene utilizzato per assegnare il vettore a un nome di variabile.
Utilizzo dell'operatore :
Per creare una sequenza di numeri, l'operatore :
è molto utile:
# Creazione di una sequenza da 1 a 10
sequence <- 1:10
print(sequence)
# Creazione di una sequenza inversa
reverse_sequence <- 10:1
print(reverse_sequence)
Questo è un modo rapido per creare una sequenza di interi. È come dire a R, "Dammi tutti i numeri da questo a quello."
Utilizzo della funzione seq()
Per avere un controllo maggiore sulle tue sequenze, la funzione seq()
è la tua alleata:
# Creazione di una sequenza con un passo specifico
by_twos <- seq(from = 0, to = 10, by = 2)
print(by_twos)
# Creazione di una sequenza con una lunghezza specifica
five_numbers <- seq(from = 0, to = 1, length.out = 5)
print(five_numbers)
La funzione seq()
è più flessibile, permettendoti di specificare l'inizio, la fine, la dimensione del passo o il numero di elementi che vuoi.
Utilizzo della funzione rep()
A volte, potresti voler ripetere valori. È qui che entra in gioco rep()
:
# Ripetere un singolo valore
repeat_five <- rep(5, times = 3)
print(repeat_five)
# Ripetere un vettore
repeat_vector <- rep(c(1, 2), times = 3)
print(repeat_vector)
# Ripetere ogni elemento
repeat_each <- rep(c(1, 2), each = 3)
print(repeat_each)
rep()
è fantastico per creare modelli o riempire i tuoi dati con valori ripetuti.
Accesso agli Elementi del Vettore
Ora che sappiamo come creare vettori, impariamo come accedere ai loro elementi. In R, utilizziamo parentesi quadre []
per questo scopo.
Accesso per Indice
Ricorda, in R, l'indicizzazione parte da 1, non da 0 come in altri linguaggi di programmazione.
fruits <- c("apple", "banana", "cherry", "date")
# Accesso all'elemento primo
print(fruits[1]) # Output: "apple"
# Accesso all'elemento terzo
print(fruits[3]) # Output: "cherry"
# Accesso a più elementi
print(fruits[c(1, 3)]) # Output: "apple" "cherry"
# Accesso a un intervallo di elementi
print(fruits[2:4]) # Output: "banana" "cherry" "date"
Indicizzazione Negativa
In R, puoi utilizzare indicizzazioni negative per escludere elementi:
# Escludere il secondo elemento
print(fruits[-2]) # Output: "apple" "cherry" "date"
# Escludere più elementi
print(fruits[c(-1, -3)]) # Output: "banana" "date"
Indicizzazione Logica
Puoi anche utilizzare vettori logici per accedere agli elementi:
numbers <- c(1, 2, 3, 4, 5)
# Accesso ai numeri dispari
print(numbers[numbers %% 2 == 0]) # Output: 2 4
# Accesso ai numeri maggiori di 3
print(numbers[numbers > 3]) # Output: 4 5
Manipolazione dei Vettori
Ora che possiamo creare e accedere ai vettori, impariamo come manipolarli.
Operazioni Aritmetiche sui Vettori
Puoi eseguire operazioni aritmetiche sui vettori:
vec1 <- c(1, 2, 3)
vec2 <- c(4, 5, 6)
# Addizione
print(vec1 + vec2) # Output: 5 7 9
# Moltiplicazione
print(vec1 * vec2) # Output: 4 10 18
# Divisione
print(vec2 / vec1) # Output: 4 2.5 2
Riciclo dei Vettori
Quando si eseguono operazioni su vettori di lunghezze diverse, R riciclerà il vettore più breve:
short_vec <- c(1, 2)
long_vec <- c(1, 2, 3, 4, 5, 6)
print(short_vec + long_vec) # Output: 2 4 4 6 6 8
R ripete il vettore più breve per adattarsi alla lunghezza del vettore più lungo.
Funzioni per i Vettori
R fornisce molte funzioni utili per lavorare con i vettori:
numbers <- c(5, 2, 8, 1, 9)
# Lunghezza del vettore
print(length(numbers)) # Output: 5
# Somma di tutti gli elementi
print(sum(numbers)) # Output: 25
# Media (media) del vettore
print(mean(numbers)) # Output: 5
# Ordinamento del vettore
print(sort(numbers)) # Output: 1 2 5 8 9
Ecco una tabella che riassume alcune funzioni comuni per i vettori:
Funzione | Descrizione |
---|---|
length() | Restituisce il numero di elementi nel vettore |
sum() | Calcola la somma di tutti gli elementi |
mean() | Calcola la media di tutti gli elementi |
median() | Trova il valore mediano |
max() | Restituisce il valore massimo |
min() | Restituisce il valore minimo |
sort() | Ordina il vettore in ordine crescente |
rev() | Inverte l'ordine degli elementi |
Conclusione
Congratulazioni! Avete appena fatto i vostri primi passi nel mondo dei vettori in R. Abbiamo coperto la creazione, l'accesso agli elementi e la manipolazione di base. Ricorda, la pratica fa la perfezione, quindi non esitare a sperimentare con questi concetti.
I vettori sono i mattoni fondamentali della manipolazione dei dati in R, e padroneggiarli vi preparerà per il successo nel vostro viaggio di programmazione in R. Continuate a esplorare, continuate a programmare e, soprattutto, divertitevi con esso!
Credits: Image by storyset