Другие объекты
Списки
Задание 1
Создайте список l1
, где первый элемент - случайные пять элементов вектора letters
, а второй - пять случайных значений из вектора seq(from = 1, to = 50, by = 7)
Задание 2
Модифицируйте предыдущее задание - создайте именованный список l1
, где первый элемент назван как id
, а второй элемент - value
.
Задание 3
Выведите на печать структуру списка l1
.
str(l1)
## List of 2
## $ id : chr [1:5] "u" "c" "y" "t" ...
## $ value: num [1:5] 15 8 29 1 50
Факторы
Задание 1
Превратите вектор f1 <- c('1-1', '1-3', '1-5', '1-8', '1-10')
в фактор. Выведите на печать.
0.0.0.3 Задание 4
Удалите первые два значения f1
. Проверьте, какие сейчас остались уровни фактора.
f1 <- f1[-c(1, 2)]
f1
## [1] 1-5 1-8 1-10
## Levels: 1-1 1-3 1-5 1-8 1-10
Пропущенные значения, NA's
Задание 2
Проверьте каждый элемент вектора vec
, является ли он пропущенным или нет.
is.na(vec)
## [1] FALSE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE
## [13] FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE
Задание 3
Подсчитайте количество пропущенных значений в векторе vec
Здесь можно воспользоваться тем, что логическое значение TRUE математическими функциями интерпертируется как 1 (а FALSE как 0).
Задание 5
В списке l1 <- list(id = sample(letters, 5), value = sample(seq(from = 1, to = 50, by = 7), 5))
удалите второй элемент.
При работе с списками удалить подсписок можно как через переприсвоение списка (просто не выбрать определенный элемент индексом), так и через присвоение элементу, который необходимо удалить, значения NULL
. Стоит учитывать, что подобное поведение неприменимо к векторам и матрицам.