Денис Соломатин - Основы статистической обработки педагогической информации

Тут можно читать онлайн Денис Соломатин - Основы статистической обработки педагогической информации - бесплатно ознакомительный отрывок. Жанр: comp-programming, год 2020. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Основы статистической обработки педагогической информации
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    2020
  • ISBN:
    978-5-532-04389-3
  • Рейтинг:
    5/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Денис Соломатин - Основы статистической обработки педагогической информации краткое содержание

Основы статистической обработки педагогической информации - описание и краткое содержание, автор Денис Соломатин, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Учебное пособие содержит текстовые сведения, иллюстрации и задания по основам статистической обработки педагогической информации в R, вольный пересказ содержимого сайта r4ds.had.co.nz, многие годы аккумулирующего труды исследователей всего мира, с занимательными дополнениями и историческими справками в попытке адаптации материала под профессиональные нужды современных онлайн-учителей. Последняя глава посвящена изучению возможностей R, позволяющих открыть собственную онлайн-школу.

Основы статистической обработки педагогической информации - читать онлайн бесплатно ознакомительный отрывок

Основы статистической обработки педагогической информации - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Денис Соломатин
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Чтобы изучить основные способы работы с данными из dplyr, будем пользоваться базой данных nycflights13::flights, она содержит информацию по всем 336 776 рейсам, вылетевшим из Нью-Йорка. Данные поступают из Бюро статистики транспорта США, и вы можете с ними ознакомиться в любое время, просто введя в консоли:

flights

Заметим, что эта база данных при выводе в консоль отличается от вывода из других баз данных, которые применяли ранее. Показаны лишь первые несколько строк и столбцы, которые поместились на экране. Чтобы просмотреть весь набор данных, необходимо запустить:

view(flights)

Откроется таблица средствами просмотра RStudio, в слегка упрощенном виде, чтобы легче было применять инструментарий tidyverse. На данный момент не нужно беспокоиться о нюансах, позже вернемся к табличному представлению данных в соответствующей главе. Ряд из нескольких буквенных сокращения под названиями столбцов описывает тип каждой переменной: int означает целые числа; dbl означает действительные числа; chr означает символьные строки; dttm означает дату-время (дата + время). Существуют и другие распространенные типы переменных, они не используются в данном наборе, но будут рассмотрены отдельно: lgl означает логические значения, которые содержат только TRUE или FALSE; fctr означает факторы, которые R использует для представления категориальных переменных с фиксированными возможными значениями; date означает данные.

Следующие пять ключевых функций dplyr позволяют решить подавляющее большинство задач обработки данных: filter() отфильтрует наблюдения по заданным условиям; arrange() меняет порядок строк; select() выберет переменные по их именам; mutate() создаёт новые переменных со свойствами существующих переменных; summary() сворачивает множество значений до одного. Перечисленные функции можно использовать совместно с group_by(), которая изменяет область действия каждой функции со всего набора данных на определенные группы. Собственно перечисленные шесть функции и предоставляют собой команды языка обработки данных.

Все функции работают по общей схеме:

1) Первый аргумент – фрагмент данных.

2) Последующие аргументы описывают, что нужно делать с выбранными данными, используя имена переменных без кавычек, либо в одиночных апострофах кавычках «'», если имена содержат пробел « ».

3) Результатом является новый фрагмент данных.

Перечисленные свойства делают легко реализуемой последовательность из нескольких простых шагов к достижению желаемого результата. Разберем на примерах, как это работает. filter() позволяет выбирать подмножество наблюдений на основе определенных условий. Первый аргумент содержит имя базы данных. Второй и последующие аргументы являются выражениями, фильтрующими данные. Например, выберем все рейсы на 5 мая следующей командой:

filter(flights, month == 5, day == 5)

Когда запускаете эту строку кода, dplyr выполняет операцию фильтрации и возвращает новый блок данных. Функции dplyr никогда меняют входные данные, поэтому, если понадобится сохранить результат, то придется использовать оператор присваивания:

may5 <���– filter(flights, month == 5, day == 5)

R либо распечатывает результаты, либо сохраняет их в переменную. Когда нужно сделать и то, и другое, команда заключается в круглые скобки:

(may5 <���– filter(flights, month == 5, day == 5))

Чтобы эффективно использовать фильтрацию, нужно знать, как выбрать наблюдения, используя операторы сравнения. R предоставляет стандартный набор операторов: > (больше), >= (больше или равно), < (меньше), <= (меньше или равно), != (не равны), == (равны). Начинающие пользователи R зачастую ставят = вместо == при проверке равенства. Если допустить такое, то возникнет предупреждение об ошибке. Есть еще одна распространенная проблема, с которой сталкиваются при использовании ==, это числа с плавающей запятой. Поистине альтернативная арифметика:

sqrt (4) ^ 2 == 4

# > [1] TRUE

sqrt (5) ^ 2 == 5

# > [1] FALSE

1 / 50 * 50 == 1

# > [1] TRUE

1 / 49 * 49 == 1

# > [1] FALSE

Дело в том, что в R используется арифметика конечной точности, так как затруднительно хранить бесконечное количество цифр, либо реализовывать алгебраический подход. Поэтому каждое число в R является приближением, а вместо оператора == нередко используется функция near(), позволяющая сравнивать приближенные величины:

near(sqrt(5) ^ 2, 5)

# > [1] TRUE

Несколько аргументов функции filter() перечисленные через запятую равносильны объединению условий союзом «и», при этом, каждое выражение должно оказаться истинным, чтобы из входных данных соответствующая запись была сохранена в выходные данные. Для остальных логических связок можно использовать булевы операторы: & это «и», | это «или», ! это отрицание «не», xor( x , y ) это исключающее или с аргументами x , y .

Следующий код находит все рейсы, которые вылетели в феврале или марте:

filter(flights, month == 2 | month == 3)

Если попытаться ввести команду буквально

filter(flights, month == (2|3))

то вместо желаемого будут найдены все месяцы равные результату булевой операции 2|3, значение которой обращается в TRUE. В числовом контексте TRUE становится равным единице 1, поэтому будут найдены все январские вылеты, что вовсе не соответствует задуманному.

Полезным клавиатурным сокращением для решения обозначенной проблемы является x %in% y . Это позволит выбрать каждую строку, где x является одним из значений в y . Можно было бы использовать следующую альтернативу для кода выше:

filter(flights, month %in% c(2, 3))

Иногда можно упростить сложное выражение вспомнив законы де Моргана из курса математической логики: !(x & y) == !х | !y, и !(x | y) == !x & !y. Например, если нужно найти рейсы, которые не задерживались (по прилету или отправлению) более чем на час, можно воспользоваться любым из следующих фильтров:

filter(flights,!(arr_delay > 60 | dep_delay > 60))

filter(flights, arr_delay <= 60, dep_delay <= 60)

Кроме & и |, в R есть && и ||, но не используйте их сейчас, позже узнаете, при каких условиях уместно их применение.

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

NA > 1

#> [1] NA

2 == NA

#> [1] NA

NA + 3

#> [1] NA

NA / 4

#> [1] NA

Самым алогичным результатом может показаться следующий:

NA == NA

#> [1] NA

Но его легко понять в конкретном контексте: совпадает ли содержимое двух ящиков, внутри которых неизвестно что? Мы не знаем! Если хотите определить, отсутствует ли значение конкретной переменной, можно воспользоваться функцией is.na(), в качестве аргумента задав интересующее имя. Функция filter() отбирает только те строки, для проверяемые условия обращаются в TRUE, при этом исключаются как значения FALSE, так и NA. Если хотите сохранить пропущенные значения, то запрашивайте их в явном виде:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Денис Соломатин читать все книги автора по порядку

Денис Соломатин - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Основы статистической обработки педагогической информации отзывы


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


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x