sapply не может упростить результат — что делать?
Казалось бы, sapply() отлично справлялась со своей задачей: во всех предыдущих примерах она аккуратно упрощала громоздкий вывод lapply(). Но, как и в жизни, не всё поддаётся упрощению. Как же поведёт себя sapply() в таком случае?
Мы уже создали функцию below_zero(), которая принимает вектор числовых значений и возвращает вектор, содержащий только значения, строго меньшие нуля.
Это упражнение является частью курса
Intermediate R
Инструкции к упражнению
- Примените
below_zero()кtempс помощьюsapply()и сохраните результат вfreezing_s. - Примените
below_zero()кtempс помощьюlapply(). Сохраните полученный список в переменнуюfreezing_l. - Сравните
freezing_sиfreezing_lс помощью функцииidentical().
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# temp is already prepared for you in the workspace
# Definition of below_zero()
below_zero <- function(x) {
return(x[x < 0])
}
# Apply below_zero over temp using sapply(): freezing_s
# Apply below_zero over temp using lapply(): freezing_l
# Are freezing_s and freezing_l identical?