Введение в функции

Intermediate R

Filip Schouwenaars

DataCamp Instructor

Функции

  • Вы уже знакомы с ними!
  • Создать список: list()
  • Вывести переменную: print()
Intermediate R

Принцип чёрного ящика

Intermediate R

Принцип чёрного ящика

Intermediate R

Принцип чёрного ящика

Intermediate R

Принцип чёрного ящика

Intermediate R

Принцип чёрного ящика

Intermediate R

Принцип чёрного ящика

Intermediate R

Принцип чёрного ящика

Intermediate R

Вызов функции в R

sd(c(1, 5, 6, 7))
2.629956
values <- c(1, 5, 6, 7)
sd(values)
2.629956
my_sd <- sd(values)
my_sd
2.629956
Intermediate R

Документация функции

help(sd)
?sd
sd(x, na.rm = FALSE)

Снимок экрана 2021-04-09 в 9.22.28.png

Intermediate R

Вопросы

sd(x, na.rm = FALSE)
  • Имена аргументов: x, na.rm
  • na.rm = FALSE
  • sd(values) работает?
Intermediate R

Сопоставление аргументов

sd(x, na.rm = FALSE)

По позиции

sd(values)

По имени

sd(x = values)
Intermediate R

Аргумент na.rm

values <- c(1, 5, 6, NA)
sd(values)
NA
sd(x, na.rm = FALSE)
sd(values, TRUE)
2.645751
sd(values, na.rm = TRUE)
2.645751
Intermediate R

sd(values) работает?

values <- c(1, 5, 6, 7)
sd(values)
2.629956
sd()
Error in is.data.frame(x) : 
argument "x" is missing, with no default
sd(x, na.rm = FALSE)
Intermediate R

Полезный приём

args(sd)
function (x, na.rm = FALSE) 
NULL
Intermediate R

Итоги

  • Функции работают как чёрный ящик
  • Сопоставление аргументов: по позиции или по имени
  • Аргументы функции могут иметь значения по умолчанию
Intermediate R

Давайте потренируемся!

Intermediate R

Preparing Video For Download...