single
Логічна індексація
Свайпніть щоб показати меню
Чудово! Доступ до стовпців за їхніми іменами є зручним. Чи можемо ми відфільтрувати рядки, які хочемо вивести?
Дійсно, можемо. Спочатку можна використовувати індекси (як це було для векторів або матриць). Але зазвичай ми не знаємо позицій рядків, а знаємо певні умови, яким вони мають відповідати. Наприклад, можна отримати дані лише для чоловіків або лише для людей старших за 30 років. Це можна зробити, вказавши необхідні умови у квадратних дужках. Для перевірки рівності потрібно використовувати подвійний знак ==.
Припустимо, у нас є датафрейм data і потрібно відфільтрувати рядки, де у стовпці 30 значення дорівнює age. Це можна зробити за допомогою такого синтаксису: data[data$age == 30,]. Зверніть увагу, що умова ставиться як перший індекс у квадратних дужках. Наприклад, для тих самих тренувальних даних, як і раніше, давайте виберемо дані людей старших за 30 років і лише чоловіків.
1234567891011# Data name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") # Creating a data frame test <- data.frame(name, age, gender) # People older than 30 test[test$age > 30, ] # Males only test[test$gender == 'M', ]
Як бачите, це правильно.
Swipe to start coding
Використовуючи набір даних mtcars, витягніть наступні дані:
- Автомобілі, які проходять чверть милі менш ніж за 16 секунд (стовпець
qsec). - Автомобілі з 6 циліндрами (стовпець
cyl).
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат