Перейти к основному содержимому
Модуль 1 · Урок 2 из 22/10 в курсе~12 min
Уроки модуля (2/2)

Типы данных и матрицы

В R есть несколько основных типов данных, которые позволяют хранить различную информацию внутри векторов и переменных.

Элементарные типы данных

Три основных типа данных, наиболее часто используемых в R:

  1. numeric: десятичные числа (например, 4.5, 10.0) или целые числа.
  2. character: текстовые строки, заключенные в двойные или одинарные кавычки (например, "Alice", 'Data').
  3. logical: логические значения, которые могут быть только TRUE или FALSE. В R вы также можете использовать сокращения T или F (хотя для ясности рекомендуется использовать полные версии).
R
# Examples of different types
score <- 95.5          # numeric
player_name <- "Marco"  # character
is_winner <- TRUE       # logical

Матрицы

Матрица в R — это двумерное расширение вектора. Как и векторы, матрицы могут содержать элементы только одного типа (обычно числа).

Вы создаете матрицу с помощью функции matrix(), предоставляя вектор данных и указывая количество строк (nrow) или столбцов (ncol):

R
# Create a 2x3 matrix with values from 1 to 6
mat <- matrix(1:6, nrow = 2, ncol = 3)
print(mat)

По умолчанию R заполняет матрицу столбец за столбцом.

Доступ к элементам

Чтобы получить доступ к определенному элементу матрицы, используйте квадратные скобки [row, column]:

R
# Extract the element at the first row, second column
value <- mat[1, 2]

# Extract an entire row by leaving the column field empty
first_row <- mat[1, ]

# Extract an entire column
second_col <- mat[, 2]

Факторы

Факторы в R — это специальные структуры данных, используемые для представления категориальных переменных (качественные данные, принадлежащие конечному набору категорий, таких как пол или уровень образования). Они очень важны в статистическом анализе:

R
sizes <- c("M", "L", "M", "S")
size_factor <- factor(sizes)
print(size_factor) # Also shows the Levels: S M L

Объединение данных: cbind и rbind

Мы можем комбинировать векторы или матрицы, связывая их по столбцу с помощью cbind() (привязка столбца) или по строке с помощью rbind() (привязка строки):

R
v1 <- c(1, 2)
v2 <- c(3, 4)

# Creates a 2x2 matrix by placing v1 and v2 side-by-side as columns
combined <- cbind(v1, v2)

Попробуйте сами

Упражнение#r.m1.l2.e1
Попыток: 0Загрузка…

Объявите логическую переменную с именем is_active со значением TRUE и символьную переменную с именем user_name со значением «Алиса».

Загрузка редактора…
Показать подсказку

Используйте оператор <- для обеих переменных в отдельных строках.

Решение доступно после 3 попыток

Упражнение#r.m1.l2.e2
Попыток: 0Загрузка…

Создайте матрицу с именем mat, содержащую значения от 1 до 6, состоящую из 2 строк (nrow = 2) и 3 столбцов (ncol = 3).

Загрузка редактора…
Показать подсказку

Используйте функцию матрицы(1:6, nrow = 2, ncol = 3).

Решение доступно после 3 попыток

Упражнение#r.m1.l2.e3
Попыток: 0Загрузка…

Учитывая уже созданный матричный мат, извлеките элемент, расположенный в первой строке и третьем столбце, и сохраните его в переменной val.

Загрузка редактора…
Показать подсказку

Доступ к элементу осуществляется с помощью квадратных скобок: val <- mat[1, 3]

Решение доступно после 3 попыток

Упражнение#r.m1.l2.e4
Попыток: 0Загрузка…

Создайте фактор из векторных категорий и присвойте его переменной cat_factor.

Загрузка редактора…
Показать подсказку

Используйте функцию фактора(): cat_factor <- фактор(категории)

Решение доступно после 3 попыток

Упражнение#r.m1.l2.e5
Попыток: 0Загрузка…

Учитывая векторы col1 и col2, объедините их как столбцы матрицы с помощью cbind() и присвойте результат my_matrix.

Загрузка редактора…
Показать подсказку

Использование: my_matrix <- cbind(col1, col2)

Решение доступно после 3 попыток