Пишем собственную функцию (3)
Помните ли вы разницу между аргументами со значениями по умолчанию и без них? В разделе использования документации функции sd() приведена следующая информация:
sd(x, na.rm = FALSE)
Это означает, что аргумент x обязателен для корректного вызова функции sd(), тогда как na.rm уже имеет значение по умолчанию. Если не указать этот аргумент, ошибки не возникнет.
Вы также можете задавать значения по умолчанию для аргументов в собственных функциях R. Для этого используйте следующий шаблон:
my_fun <- function(arg1, arg2 = val2) {
body
}
В редакторе справа уже есть расширенная версия функции pow_two() из предыдущего упражнения. Попробуйте её доработать!
Это упражнение является частью курса
Intermediate R
Инструкции к упражнению
- Добавьте необязательный аргумент с именем
print_info, который по умолчанию равенTRUE. - Оберните функцию
print()в конструкциюif: эта функция должна выполняться только тогда, когдаprint_infoравноTRUE. - Поэкспериментируйте с функцией
pow_two(), которую вы только что написали.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Finish the pow_two() function
pow_two <- function(x) {
y <- x ^ 2
print(paste(x, "to the power two equals", y))
return(y)
}