И / Или
Иногда требуется проверить сразу несколько условий. Например, как узнать, находится ли цена акций Apple выше 120, но ниже 121? Простые операторы сравнения здесь не помогут! Для нескольких условий используются оператор И — &, и оператор Или — |.
&(И): пересечение условий. Выражениеa & bистинно только тогда, когда истинны оба условия:aиb.|(Или): объединение условий. Выражениеa | bистинно, если истинно хотя бы одно из условий:aилиb.
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
Для выполнения задания вам доступен фрейм данных stocks.
Это упражнение является частью курса
Средний уровень R для финансов
Инструкции к упражнению
- Когда значение
ibmнаходится в диапазоне от171до176? Добавьте соответствующий логический вектор вstocksпод именемibm_buy_range. - Проверьте, опускается ли значение
paneraниже213.20или поднимается выше216.50, и добавьте результат вstocksкак столбецpanera_spike. - Предположим, вас интересуют даты после
2017-01-21, но строго до2017-01-25(границы не включаются). Используйтеas.Date()и оператор&. Добавьте результат вstocksкакgood_dates. - Выведите на экран
stocks.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# IBM buy range
___
# Panera spikes
___
# Date range
___
# Print stocks
___