Lekcje modułu (2/2)
Typy Danych i Macierze
R posiada kilka podstawowych typów danych, które pozwalają na przechowywanie różnych informacji wewnątrz wektorów i zmiennych.
Podstawowe Typy Danych
Trzy główne typy danych najczęściej używane w R to:
numeric: Liczby dziesiętne (np.4.5,10.0) lub całkowite.character: Ciągi tekstowe ujęte w podwójny lub pojedynczy cudzysłów (np."Alice",'Data').logical: Wartości logiczne (booleowskie), które mogą wynosić tylkoTRUElubFALSE. W R można używać również skrótówTlubF(choć zaleca się stosowanie pełnych wersji dla większej czytelności).
# Przykłady różnych typów
score <- 95.5 # numeric
player_name <- "Marco" # character
is_winner <- TRUE # logical
Macierze
Macierz (matrix) w R to dwuwymiarowe rozszerzenie wektora. Podobnie jak wektory, macierze mogą zawierać elementy tylko jednego typu (zazwyczaj liczby).
Macierz tworzy się za pomocą funkcji matrix(), podając wektor danych oraz określając liczbę wierszy (nrow) lub kolumn (ncol):
# Tworzymy macierz 2x3 z wartościami od 1 do 6
mat <- matrix(1:6, nrow = 2, ncol = 3)
print(mat)
Domyślnie R wypełnia macierz kolumna po kolumnie.
Dostęp do Elementów
Aby uzyskać dostęp do konkretnego elementu w macierzy, używa się nawiasów kwadratowych [wiersz, kolumna]:
# Wyodrębnij element z pierwszego wiersza i drugiej kolumny
value <- mat[1, 2]
# Wyodrębnij cały wiersz, pozostawiając pole kolumny puste
first_row <- mat[1, ]
# Wyodrębnij całą kolumnę
second_col <- mat[, 2]
Czynniki (Factors)
Czynniki (factors) w R to specjalne struktury danych używane do reprezentowania zmiennych kategorycznych (danych jakościowych, które należą do skończonego zbioru kategorii, takich jak płeć lub poziom wykształcenia). Są bardzo ważne w analizie statystycznej:
sizes <- c("M", "L", "M", "S")
size_factor <- factor(sizes)
print(size_factor) # Pokazuje również poziomy (Levels): S M L
Łączenie Danych: cbind i rbind
Możemy łączyć wektory lub macierze, wiążąc je kolumnami za pomocą cbind() (column bind) lub wierszami za pomocą rbind() (row bind):
v1 <- c(1, 2)
v2 <- c(3, 4)
# Tworzy macierz o 2 wierszach i 2 kolumnach, układając v1 i v2 obok siebie jako kolumny
combined <- cbind(v1, v2)
Spróbuj sam
Zadeklaruj zmienną logical o nazwie is_active ustawioną na TRUE oraz zmienną character o nazwie user_name ustawioną na 'Alice'.
Pokaż wskazówkę
Użyj operatora <- dla obu zmiennych w osobnych liniach.
Rozwiązanie dostępne po 3 próbach
Utwórz macierz o nazwie mat zawierającą wartości od 1 do 6, o strukturze z 2 wierszami (nrow = 2) i 3 kolumnami (ncol = 3).
Pokaż wskazówkę
Użyj funkcji matrix(1:6, nrow = 2, ncol = 3)
Rozwiązanie dostępne po 3 próbach
Dla danej macierzy mat, wyodrębnij element znajdujący się w pierwszym wierszu i trzeciej kolumnie, a następnie zapisz go w zmiennej val.
Pokaż wskazówkę
Uzyskaj dostęp do elementu za pomocą nawiasów kwadratowych: val <- mat[1, 3]
Rozwiązanie dostępne po 3 próbach
Utwórz czynnik (factor) na podstawie wektora categories i przypisz go do zmiennej cat_factor.
Pokaż wskazówkę
Użyj funkcji factor(): cat_factor <- factor(categories)
Rozwiązanie dostępne po 3 próbach
Dla danych wektorów col1 i col2, połącz je jako kolumny macierzy za pomocą cbind() i przypisz wynik do my_matrix.
Pokaż wskazówkę
Użyj: my_matrix <- cbind(col1, col2)
Rozwiązanie dostępne po 3 próbach