Menu
Coddy logo textTech

Operacje na wektorach

Część sekcji Podstawy ścieżki R w Coddy. Lekcja 59 z 78.

Jedną z największych zalet R jest możliwość wykonywania operacji na całych wektorach jednocześnie, bez konieczności iterowania przez każdy element. Dzięki temu Twój kod jest czytelniejszy i bardziej wydajny.

Gdy zastosujesz operator arytmetyczny do wektora, R wykonuje działanie na każdym elemencie:

prices <- c(10, 25, 15, 30)
discounted <- prices * 0.9
print(discounted)

Wynik:

[1]  9.0 22.5 13.5 27.0

Możesz również wykonywać działania na dwóch wektorach o tej samej długości. R łączy ze sobą odpowiadające sobie elementy:

quantities <- c(2, 1, 4, 3)
prices <- c(10, 25, 15, 30)
totals <- quantities * prices
print(totals)

Wynik:

[1] 20 25 60 90

R udostępnia przydatne wbudowane funkcje do typowych obliczeń na wektorach, takie jak sum(), mean(), min() i max():

scores <- c(85, 92, 78, 95, 88)
print(sum(scores))
print(mean(scores))
print(min(scores))
print(max(scores))

Wynik:

[1] 438
[1] 87.6
[1] 78
[1] 95
challenge icon

Wyzwanie

Łatwy

Oto podane wektory:

hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)

Wykonaj następujące operacje i wypisz każdy wynik:

  1. Oblicz zarobki za każdy dzień, mnożąc hours_worked przez hourly_rate (element po elemencie). Wypisz ten wektor.
  2. Zastosuj premię w wysokości 10% do wszystkich zarobków dziennych (pomnóż przez 1.1). Wypisz zaktualizowany wektor zarobków.
  3. Wypisz łączne zarobki za tydzień, używając sum()
  4. Wypisz średnie zarobki dzienne, używając mean()
  5. Wypisz najwyższe zarobki za jeden dzień, używając max()
  6. Wypisz najniższe zarobki za jeden dzień, używając min()

Wynik powinien być następujący:

[1] 120 140 162 132 136
[1] 132.0 154.0 178.2 145.2 149.6
[1] 759
[1] 151.8
[1] 178.2
[1] 132

Spróbuj swoich sił

# Dane wektory
hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)

# TODO: Napisz swój kod poniżej

# 1. Oblicz dzienne zarobki (mnożenie element po elemencie)

# 2. Dodaj premię 10% do dziennych zarobków

# 3. Wyświetl łączne zarobki za tydzień, używając sum()

# 4. Wyświetl średnie dzienne zarobki, używając mean()

# 5. Wyświetl najwyższe zarobki z jednego dnia, używając max()

# 6. Wyświetl najniższe zarobki z jednego dnia, używając min()
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator R online