Преобразование значений с помощью possibly()
Допустим, вам нужно перевести рост персонажей «Звёздных войн» из sw_people из сантиметров в футы. Вы уже знаете, что в некоторых значениях роста данные отсутствуют, поэтому используйте possibly(), чтобы заменить пропущенные значения на NA. Затем умножьте каждое существующее значение на 0.0328084, чтобы перевести его из сантиметров в футы.
Чтобы лучше понять структуру данных, выведите объект height_cm в консоль и посмотрите на значения роста в сантиметрах.
Это упражнение является частью курса
Основы функционального программирования с purrr
Инструкции к упражнению
- Передайте объект
height_cmчерез пайп в функциюmap_*(), которая возвращает вектор с плавающей точкой. - Преобразуйте каждый элемент
height_cmв футы (умножьте его на 0.0328084). - Поскольку не все элементы являются числовыми, используйте
possibly(), чтобы заменить проблемные значения наNA_real_.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Create a piped workflow that returns double vectors
___ %>%
map___(possibly(function(___){
# Convert centimeters to feet
___ * 0.0328084
}, ___))