And / Or
Czasem trzeba sprawdzić kilka warunków relacyjnych jednocześnie. Co zrobić, gdy chcesz wiedzieć, czy kurs akcji Apple był powyżej 120, ale poniżej 121? Zwykłe operatory relacyjne nie wystarczą! Do obsługi wielu warunków służą operator And & oraz operator Or |.
&(And): Część wspólna. Wyrażeniea & bjest prawdziwe tylko wtedy, gdy oba warunkiaibsą spełnione.|(Or): Suma. Wyrażeniea | bjest prawdziwe, gdy spełniony jest co najmniej jeden z warunków:alubb.
apple <- c(120.00, 120.08, 119.97, 121.88)
# Both conditions must hold
(apple > 120) & (apple < 121)
[1] FALSE TRUE FALSE FALSE
# Only one condition has to hold
(apple <= 120) | (apple > 121)
[1] TRUE FALSE TRUE TRUE
Ramka danych stocks jest dostępna do wykorzystania.
To ćwiczenie jest częścią kursu
R dla finansów – poziom średnio zaawansowany
Instrukcje do ćwiczenia
- Kiedy wartości
ibmmieszczą się w przedziale od171do176? Dodaj wynikowy wektor logiczny dostockspod nazwąibm_buy_range. - Sprawdź, czy
paneraspada poniżej213.20lub rośnie powyżej216.50, a następnie dodaj wynik dostocksjako kolumnępanera_spike. - Załóżmy, że interesują cię daty po
2017-01-21, ale przed2017-01-25– wyłącznie. Użyjas.Date()i operatora&. Dodaj wynik dostocksjakogood_dates. - Wyświetl
stocks.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# IBM buy range
___
# Panera spikes
___
# Date range
___
# Print stocks
___