Цілісність даних
Під час дослідження набору даних ви часом натрапляєте на щось, що змушує замислитися, як саме було зібрано дані. Наприклад, змінна num_char містить кількість символів в електронному листі, у тисячах, тож вона може мати десяткові значення, але точно не повинна мати від'ємні значення.
Можна сформулювати тест, щоб переконатися, що ця змінна поводиться так, як очікується:
email$num_char < 0
Якщо запустити цей код у консолі, ви отримаєте довгий вектор логічних значень, який для кожного випадку в наборі даних показує, чи є ця умова TRUE. Тут перші 1000 значень, схоже, усі FALSE. Щоб перевірити, що всі випадки справді мають невід'ємні значення num_char, можна взяти суму цього вектора:
sum(email$num_char < 0)
Це зручний прийом. Коли ви виконуєте арифметичні операції над логічними значеннями, R трактує TRUE як 1, а FALSE як 0. Оскільки сума по всьому вектору дорівнює нулю, ви дізнаєтеся, що кожен випадок у наборі даних отримав значення FALSE у тесті. Тобто стовпець num_char поводиться як очікується і містить лише невід'ємні значення.
Ця вправа є частиною курсу
Розвідувальний аналіз даних у R
Інструкції до вправи
Розгляньте змінні image та attach. Ви можете прочитати про них за допомогою ?email, але файл довідки двозначний: чи зараховуються вкладені зображення до вкладених файлів у цьому наборі даних?
Спроєктуйте простий тест, щоб визначити, чи зображення враховуються як вкладені файли. Для цього створіть логічну умову для порівняння значень двох змінних, а потім використайте sum(), щоб оцінити кожен випадок у наборі даних. Нагадаємо, що логічні оператори: < — менше ніж, <= — менше або дорівнює, > — більше ніж, >= — більше або дорівнює, == — дорівнює.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Test if images count as attachments