Введение в R версия 3.5.2 (2018-12-20). Заметки по R: среда программирования для анализа данных и графики. У. Н. Венэбльз

Читать онлайн книгу.

Введение в R версия 3.5.2 (2018-12-20). Заметки по R: среда программирования для анализа данных и графики - У. Н. Венэбльз


Скачать книгу
Например, если у объекта будет класс "data.frame», то он будет напечатан определенным способом, функция plot () выведет на экран его графически определенным способом, и другие, так называемые универсальные функции, такие как summary (), будут реагировать на него как на параметр, способом применимым к его классу.

      Чтобы удалить временно эффект класса, используйте функцию unclass (). Например, если у winter есть класс "data.frame» то:

      > winter

      напечатает его в форме фрейма данных, которая скорее походит на матрицу, тогда как:

      > unclass (winter)

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

      Универсальные функции и классы будут обсуждены далее в Разделе 10.9 [Ориентация объекта], но только кратко.

      4. Упорядоченные и неупорядоченные факторы

      Фактор – векторный объект, используемый для спецификации дискретной классификации (группировки) компонентов других векторов одинаковой длины. R поддерживает как упорядоченные, так и не упорядоченные факторы. Хотя «реальное» применение факторов имеет место в формулах модели (см. Раздел 11.1.1 [Противоположности]), здесь рассмотрим на специальный пример.

      4.1. Специальный пример

      Предположим, например, имеется выборка 30 налоговых деклараций из всех штатов и территорий Австралии, и их индивидуальное происхождение указывается символьным вектором аббревиатуры штата как:

      > state <– c («tas», «sa», «qld», «nsw», «nsw», «nt», «wa», «wa»,

      «qld», «vic», «nsw», «vic», «qld», «qld», «sa», «tas»,

      «sa», «nt», «wa», «vic», «qld», «nsw», «nsw», «wa»,

      «sa», «act», «nsw», «vic», «vic», «act»)

      Заметим, что в случае символьного вектора, «sorted» означает сортировку в алфавитном порядке.

      Создаются факторы аналогичным образом с помощью функции factor ():

      > statef <– factor (state)

      Функция print () обрабатывает факторы несколько иначе, чем другие объекты:

      > statef

      [1] tas sa qld nsw nsw nt wa wa qld vic nsw vic qld qld sa

      [16] tas sa nt wa vic qld nsw nsw wa sa act nsw vic vic act

      Levels: act nsw nt qld sa tas vic wa

      Чтобы выяснить уровни фактора можно использовать функцию level ():

      > levels (statef)

      [1] «act» «nsw» «nt» «qld» «sa» «tas» «vic» «wa»

      4.2. Функция tapply () и массивы с переменной длиной строк

      Чтобы продолжить предыдущий пример, предположим, что у нас есть доходы от каждого налогоплательщика в другом векторе (в подходящих крупных денежных единицах):

      > incomes <– c (60, 49, 40, 61, 64, 60, 59, 54, 62, 69, 70, 42, 56,

      61, 61, 61, 58, 51, 48, 65, 49, 49, 41, 48, 52, 46,

      59, 46, 58, 43)

      Чтобы вычислить средний доход в выборке по каждому штату используем теперь специальную функцию tapply ():

      > incmeans <– tapply (incomes, statef, mean)

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

      Функция tapply () используется для применения здесь функции mean () к каждой группе компонентов первого параметра, здесь доходов, определенные уровнями второго компонента,


Скачать книгу