R - Операторы: Дружеское руководство для начинающих

Здравствуйте, будущие программисты на R! Я рад быть вашим проводником в этом захватывающем путешеcтвии в мир операторов R. Как кто-то, кто преподавал informatику на протяжении многих лет, я могу сказать, что понимание операторов похоже на обучение основным инструментам в toolbox столяра – они необходимы для создания удивительных вещей!

R - Operators

Типы операторов

Прежде чем мы углубимся, давайте быстро рассмотрим типы операторов, с которыми мы будем разбираться:

Тип оператора Описание
Арифметический Для базовых математических операций
Реляционный Для сравнения значений
Логический Для логических операций
Присваивания Для присваивания значений переменным
Разное Специальные операторы для конкретных задач

Теперь давайте закатаем рукава и начнем!

Арифметические операторы

Арифметические операторы являются основой программирования. Они позволяют нам выполнять базовые математические операции. Давайте рассмотрим несколько примеров:

# Сложение
5 + 3  # Результат: 8

# Вычитание
10 - 4  # Результат: 6

# Умножение
6 * 7  # Результат: 42

# Деление
20 / 5  # Результат: 4

# Усиление
2 ^ 3  # Результат: 8

# Остаток от деления
17 %% 5  # Результат: 2

# Целочисленное деление
17 %/% 5  # Результат: 3

Каждая из этих операций проста, но позвольте мне поделиться с вами небольшой историей. Я однажды имел студента, который был смущен оператором остатка. Я объяснил это так: "Представьте, у вас есть 17 печенек и 5 друзей. После того как вы дадите каждому другу равное количество печенек, сколько у вас останется для себя?" Именно это и вычисляет 17 %% 5!

Реляционные операторы

Реляционные операторы похожи на судей в конкурсе – они сравнивают значения и告诉我们, как они относятся друг к другу. Вот несколько примеров:

# Равенство
5 == 5  # Результат: TRUE

# Не равно
10 != 7  # Результат: TRUE

# Больше чем
8 > 3  # Результат: TRUE

# Меньше чем
6 < 9  # Результат: TRUE

# Больше или равно
7 >= 7  # Результат: TRUE

# Меньше или равно
4 <= 5  # Результат: TRUE

Мне нравится думать об этих операторах как о вопросах, которые мы задаем R. Например, 5 == 5 похоже на вопрос: "Равен ли 5 пяти?" И R радостно отвечает: "TRUE!"

Логические операторы

Логические операторы являютсяDecision-makers в нашем коде. Они работают с логическими значениями (TRUE и FALSE) и помогают нам создавать сложные условия. Давайте рассмотрим несколько примеров:

# Оператор AND
TRUE & FALSE  # Результат: FALSE

# Оператор OR
TRUE | FALSE  # Результат: TRUE

# Оператор NOT
!TRUE  # Результат: FALSE

# Элементный AND
c(TRUE, FALSE, TRUE) & c(TRUE, TRUE, FALSE)  # Результат: TRUE FALSE FALSE

# Элементный OR
c(TRUE, FALSE, TRUE) | c(TRUE, TRUE, FALSE)  # Результат: TRUE TRUE TRUE

Элементные операторы (&, |) особенно интересны. Они похожи на разговор с каждым элементом в векторе. Например, c(TRUE, FALSE, TRUE) & c(TRUE, TRUE, FALSE) похоже на то, что мы задаем каждому паре элементов вопрос: "Оба ли вы TRUE?"

Операторы присваивания

Операторы присваивания похожи на магические палочки – они позволяют нам хранить значения в переменных. Вот как они работают:

# Основное присваивание
x <- 10
print(x)  # Вывод: 10

# Присваивание справа
20 -> y
print(y)  # Вывод: 20

# Присваивание с использованием знака равенства
z = 30
print(z)  # Вывод: 30

В R мы обычно используем <- для присваивания. Это похоже на то, что мы говорим: "Возьми это значение и положи его в эту переменную." Некоторые энтузиасты R шуточно называют его "стрелкой получения" – как в "x получает 10."

Разные операторы

R также имеет некоторые специальные операторы, которые не вписываются в другие категории. Вот несколько примеров:

# Оператор %in% (проверяет, находится ли элемент в векторе)
5 %in% c(1, 3, 5, 7, 9)  # Результат: TRUE

# Оператор : (создаетsequence)
1:5  # Результат: 1 2 3 4 5

# Оператор %*% (умножение матриц)
matrix(1:4, 2, 2) %*% matrix(5:8, 2, 2)

Оператор %in% особенно полезен. Я однажды имел студента, который сравнил его с проверкой имени в списке гостей на вечеринке. Это забавный способ думать об этом!

В заключение, операторы в R являются мощными инструментами, которые позволяют нам манипулировать данными, принимать решения и создавать сложные алгоритмы. Продолжая ваше путешеcтвие в R, вы будете все чаще использовать эти операторы. Помните, что практика делает perfect! Попробуйте эти операторы в своей R-консоли, экспериментируйте с ними и не бойтесь ошибок – это часто где happens лучшее обучение.

Счастливого кодирования и пусть ваши путешеcтвия в R будут наполнены радостью и открытиями!

Credits: Image by storyset