exponenta event banner

резюме

Печать сводки таблицы, расписания или категориального массива

Описание

пример

summary(T) распечатывает сводку таблицы или расписания T.

  • Если T является таблицей, то сводка таблицы отображает описание из T.Properties.Description после чего следует сводка табличных переменных.

  • Если T является расписанием, затем сводка расписания отображает описание из T.Properties.Description, сводка времени строк, а затем сводка переменных расписания.

пример

s = summary(T) возвращает структуру, s, который содержит сводку входной таблицы или расписания. Каждое поле s сама является структурой, которая суммирует значения в соответствующей переменной T. Если T является расписанием, то s также имеет поле, которое суммирует время строки T.

пример

summary(A) печатает сводку категориального массива A.

  • Если A является вектором, то summary(A) отображает имена категорий вместе с количеством элементов в каждой категории (количество категорий). Также отображается число элементов, которые не определены.

  • Если A является матрицей, то summary обрабатывает столбцы A в виде векторов и отображает количество категорий для каждого столбца A.

  • Если A является многомерным массивом, то summary действует вдоль первого размера массива, размер которого не равен 1.

пример

summary(A,dim) печать счетчиков категорий категориального массива A вдоль размера dim.

Например, можно отобразить счетчики каждой строки в категориальном массиве, используя summary(A,2).

Примеры

свернуть все

Создайте таблицу.

load patients
BloodPressure = [Systolic Diastolic];
T = table(Gender,Age,Smoker,BloodPressure,'RowNames',LastName);

Добавление описаний и единиц измерения в таблицу T. Можно добавить описание для таблицы в целом, а также для отдельных переменных.

T.Properties.Description = 'Simulated patient data';
T.Properties.VariableUnits =  {''  'Yrs' ''  'mm Hg'};
T.Properties.VariableDescriptions{4} = 'Systolic/Diastolic';

Печать сводки таблицы T.

format compact

summary(T)
Description:  Simulated patient data
Variables:
    Gender: 100x1 cell array of character vectors
    Age: 100x1 double
        Properties:
            Units:  Yrs
        Values:
            Min          25   
            Median       39   
            Max          50   
    Smoker: 100x1 logical
        Values:
            True        34   
            False       66   
    BloodPressure: 100x2 double
        Properties:
            Units:  mm Hg
            Description:  Systolic/Diastolic
        Values:
                      Column 1    Column 2
                      ________    ________
            Min         109           68  
            Median      122         81.5  
            Max         138           99  

summary отображает минимальное, среднее и максимальное значения для каждого столбца переменной BloodPressure.

Создайте небольшое расписание.

Time = [seconds(1:5)]';
TT = timetable(Time,[98;97.5;97.9;98.1;97.9],[120;111;119;117;116],...
               'VariableNames',{'Reading1','Reading2'})
TT=5×2 timetable
    Time     Reading1    Reading2
    _____    ________    ________

    1 sec        98        120   
    2 sec      97.5        111   
    3 sec      97.9        119   
    4 sec      98.1        117   
    5 sec      97.9        116   

Распечатайте резюме расписания. summary печатает сводку времени строки, а затем сводку переменных. Если расписание регулярное, то summary также печатает размер временного шага между временами строк.

summary(TT)
RowTimes:

    Time: 5x1 duration
        Values:
            Min           1 sec 
            Median        3 sec 
            Max           5 sec 
            TimeStep      1 sec 

Variables:

    Reading1: 5x1 double

        Values:

            Min         97.5  
            Median      97.9  
            Max         98.1  

    Reading2: 5x1 double

        Values:

            Min         111   
            Median      117   
            Max         120   

Создайте таблицу. Добавьте единицы измерения в переменные таблицы. Затем просмотрите первые несколько строк.

load patients
BloodPressure = [Systolic Diastolic];
T = table(Gender,Age,Smoker,BloodPressure,'RowNames',LastName);
T.Properties.VariableUnits =  {''  'Years' ''  'mm Hg'};
head(T,3)
ans=3×4 table
                  Gender      Age    Smoker    BloodPressure
                __________    ___    ______    _____________

    Smith       {'Male'  }    38     true       124     93  
    Johnson     {'Male'  }    43     false      109     77  
    Williams    {'Female'}    38     false      125     83  

Возвращает сводку таблицы. Чтобы вернуть сводку в виде структуры, укажите выходной аргумент при использовании summary функция.

s = summary(T)
s = struct with fields:
           Gender: [1x1 struct]
              Age: [1x1 struct]
           Smoker: [1x1 struct]
    BloodPressure: [1x1 struct]

Отображение сводки табличной переменной Age. Для каждой переменной T, выходной аргумент s имеет поле, содержащее его сводку.

s.Age
ans = struct with fields:
           Size: [100 1]
           Type: 'double'
    Description: ''
          Units: 'Years'
     Continuity: []
            Min: 25
         Median: 39
            Max: 50
     NumMissing: 0

NumMissing показывает количество элементов, которые являются отсутствующим значением. В этом случае Age не содержит NaN значения, так NumMissing равно нулю. summary включает в себя NumMissing поле для числовых, duration, datetime, и categorical переменные.

Отображение минимального возраста, содержащегося в таблице. Можно получить доступ к любому полю сводки по имени.

s.Age.Min
ans = 25

Отображение сводки табличной переменной Smoker. Вы можете определить количество курильщиков и некурящих из True и False поля. Информация, содержащаяся в сводке табличной переменной, зависит от типа данных переменной.

s.Smoker
ans = struct with fields:
           Size: [100 1]
           Type: 'logical'
    Description: ''
          Units: ''
     Continuity: []
           True: 34
          False: 66

Создайте расписание.

Time = datetime({'2015-12-18 08:00:00';'2015-12-18 10:00:00';'2015-12-18 12:00:00'});
Temp = [37.3;39.1;42.3];
Pressure = [30.1;30.03;29.9];
TT = timetable(Time,Temp,Pressure)
TT=3×2 timetable
            Time            Temp    Pressure
    ____________________    ____    ________

    18-Dec-2015 08:00:00    37.3      30.1  
    18-Dec-2015 10:00:00    39.1     30.03  
    18-Dec-2015 12:00:00    42.3      29.9  

Верните сводку расписания в виде структуры.

s = summary(TT)
s = struct with fields:
        Time: [1x1 struct]
        Temp: [1x1 struct]
    Pressure: [1x1 struct]

Отображение сводки времени строки. TimeStep показывает, что интервал времени между последовательными временами строк составляет два часа. NumMissing показывает отсутствие отсутствующих значений (NaT) в векторе времени строки.

s.Time
ans = struct with fields:
          Size: [3 1]
          Type: 'datetime'
           Min: 18-Dec-2015 08:00:00
        Median: 18-Dec-2015 10:00:00
           Max: 18-Dec-2015 12:00:00
    NumMissing: 0
      TimeStep: 02:00:00

Измените время последней строки таким образом, чтобы время строки имело различные интервалы между ними.

TT.Time(3) = '2015-12-18 11:00:00';
TT
TT=3×2 timetable
            Time            Temp    Pressure
    ____________________    ____    ________

    18-Dec-2015 08:00:00    37.3      30.1  
    18-Dec-2015 10:00:00    39.1     30.03  
    18-Dec-2015 11:00:00    42.3      29.9  

Вернитесь к сводке обновленного расписания. Поскольку временные шаги между временами строк различны, TimeStep поле имеет NaN.

s = summary(TT);
s.Time
ans = struct with fields:
          Size: [3 1]
          Type: 'datetime'
           Min: 18-Dec-2015 08:00:00
        Median: 18-Dec-2015 10:00:00
           Max: 18-Dec-2015 11:00:00
    NumMissing: 0
      TimeStep: NaN

Начиная с R2018b, можно добавлять пользовательские свойства в таблицы и расписания. При добавлении пользовательских свойств сводка таблицы или расписания включает эти свойства.

Сначала создайте таблицу и добавьте значения к некоторым ее предопределенным свойствам.

load patients
BloodPressure = [Systolic Diastolic];
T = table(Gender,Age,Smoker,BloodPressure,'RowNames',LastName);
T.Properties.Description = 'Simulated patient data';
T.Properties.VariableUnits =  {''  'Yrs' ''  'mm Hg'};
T.Properties.VariableDescriptions{4} = 'Systolic/Diastolic';

Добавление пользовательских свойств с помощью addprop функция. Для каждого пользовательского свойства укажите имя. Кроме того, укажите, содержит ли значение каждого пользовательского свойства метаданные, которые применяются к таблице или к отдельным переменным таблицы.

T = addprop(T,{'SourceFile','DataOrigin'},{'table','variable'});

Сохранение значений метаданных в пользовательских свойствах.

T.Properties.CustomProperties.SourceFile = 'patients.mat';
T.Properties.CustomProperties.DataOrigin = {'census','census','self report','blood pressure reading'};

Распечатайте сводку таблицы. В стороне от T.Properties.Description, summary функция не отображает свойства, применимые к таблице в целом. Таким образом, он не отображает значение T.Properties.CustomProperties.SourceFile. Однако summary отображает свойства, применимые к переменным таблицы. Для каждой переменной, summary отображает соответствующее значение из T.Properties.CustomProperties.DataOrigin.

summary(T)
Description:  Simulated patient data

Variables:

    Gender: 100x1 cell array of character vectors

        Custom Properties:
            DataOrigin:  census
    Age: 100x1 double

        Properties:
            Units:  Yrs
        Custom Properties:
            DataOrigin:  census
        Values:

            Min          25   
            Median       39   
            Max          50   

    Smoker: 100x1 logical

        Custom Properties:
            DataOrigin:  self report
        Values:

            True        34   
            False       66   

    BloodPressure: 100x2 double

        Properties:
            Units:  mm Hg
            Description:  Systolic/Diastolic
        Custom Properties:
            DataOrigin:  blood pressure reading
        Values:
                      Column 1    Column 2
                      ________    ________

            Min         109           68  
            Median      122         81.5  
            Max         138           99  

Верните сводку в виде структуры. Каждое поле имеет структуру, соответствующую одной из переменных таблицы.

s = summary(T)
s = struct with fields:
           Gender: [1x1 struct]
              Age: [1x1 struct]
           Smoker: [1x1 struct]
    BloodPressure: [1x1 struct]

Структура s.Age сохраняет сводку для Age переменная.

s.Age
ans = struct with fields:
                Size: [100 1]
                Type: 'double'
         Description: ''
               Units: 'Yrs'
          Continuity: []
                 Min: 25
              Median: 39
                 Max: 50
          NumMissing: 0
    CustomProperties: [1x1 struct]

s.Age.CustomProperties структура сохраняет соответствующее значение из T.Properties.CustomProperties.DataOrigin собственность.

s.Age.CustomProperties
ans = struct with fields:
    DataOrigin: {'census'}

Создайте категориальный вектор 1 на 5.

A = categorical({'plane' 'car' 'train' 'car' 'plane'})
A = 1x5 categorical
     plane      car      train      car      plane 

A имеет три категории, car, plane, и train.

Печать сводки A.

summary(A)
     car      plane      train 
     2        2          1     

car появляется в двух элементах A, plane появляется в двух элементах, и train появляется в одном элементе.

С тех пор A - вектор строки, summary список вхождений каждой категории по горизонтали.

Создайте категориальный массив «4 на 2», A, из числового массива.

X = [1 3; 2 1; 3 1; 4 2];
valueset = 1:3;
catnames = {'red','green','blue'};

A = categorical(X,valueset,catnames)
A = 4x2 categorical
     red              blue  
     green            red   
     blue             red   
     <undefined>      green 

A имеет три категории, red, green, и blue. Значение, 4, не был включен в valueset входные данные для categorical функция. Следовательно, соответствующий элемент, A(4,1), не имеет соответствующей категории и не определен.

Печать сводки A.

summary(A)
     red              1      2 
     green            1      1 
     blue             1      1 
     <undefined>      1      0 

red появляется один раз в первом столбце A и дважды во второй колонке.

green появляется один раз в первом столбце A и один раз во второй колонке.

blue появляется один раз в первом столбце A и один раз во второй колонке.

A содержит только один неопределенный элемент. Это происходит в первом столбце.

Создайте категориальный массив «3 на 2», A, из числового массива.

A = categorical([1 3; 2 1; 3 1],1:3,{'red','green','blue'})
A = 3x2 categorical
     red        blue 
     green      red  
     blue       red  

A имеет три категории, red, green, и blue.

Печать сводки A вдоль второго размера.

summary(A,2)
     red      green      blue 
     1        0          1    
     1        1          0    
     1        0          1    

red появляется один раз в первой строке A, один раз во втором ряду и один раз в третьем ряду.

green появляется только в одном элементе. Встречается во втором ряду A.

blue появляется один раз в первой строке A и один раз в третьем ряду.

Входные аргументы

свернуть все

Входная таблица, заданная как таблица или расписание.

Категориальный массив, заданный как вектор, матрица или многомерный массив.

Измерение A для операции с, заданным как положительный целочисленный скаляр. Если значение не указано, по умолчанию используется первый размер массива, размер которого не равен 1.

Рассмотрим двухмерный категориальный массив A:

Если dim = 1, то summary(A,dim) отображает количество категорий для каждого столбца A.

Если dim = 2, то summary(A,dim) возвращает счетчики категорий каждой строки A.

Если dim больше, чем ndims(A), то summary(A) возвращает массив того же размера, что и A для каждой категории. summary прибыль 1 для элементов в соответствующей категории и 0 в противном случае.

Выходные аргументы

свернуть все

Сводка переменных таблицы или расписания, возвращенная в виде скалярной структуры. Для каждой переменной T.VarName на входе T, структура вывода s содержит поле s.VarName с резюме для этой переменной.

Если T имеет переменные, имена которых не являются допустимыми идентификаторами MATLAB ®, тоsummary изменяет их для создания допустимых имен полей, прежде всего путем удаления пробелов и замены символов, не относящихся к ASCII, символами подчеркивания.

Для каждого типа данных, s.VarName содержит поля, показанные ниже. Доступ к полям можно получить с помощью точечного индексирования. Например, s.VarName.Size возвращает размер переменной таблицы с именем VarName.

Тип таблицы или переменная расписания

Поля для сводки переменных

Описание

Числовой, datetime, или duration

Size

Размер переменной, хранящейся в виде числового массива

Type

Тип переменной, хранящейся в виде символьного вектора

Description

Описание переменной, хранящейся в виде символьного вектора

Units

Единицы переменной, хранящиеся в виде символьного вектора

Min

Минимальное значение

Median

Медианное значение

Max

Максимальное значение

NumMissing

Количество отсутствующих значений (NaN или NaT)

CustomProperties (опущен, если нет пользовательских свойств)

Имена и значения пользовательских свойств, связанных с переменной, хранящиеся в виде структуры

логичный

Size

Размер переменной, хранящейся в виде числового массива

Type

Тип переменной, хранящейся в виде символьного вектора

Description

Описание переменной, хранящейся в виде символьного вектора

Units

Единицы переменной, хранящиеся в виде символьного вектора

True

Количество true ценности

False

Количество false ценности

CustomProperties (опущен, если нет пользовательских свойств)

Имена и значения пользовательских свойств, связанных с переменной, хранящиеся в виде структуры

categorical

Size

Размер переменной, хранящейся в виде числового массива

Type

Тип переменной, хранящейся в виде символьного вектора

Description

Описание переменной, хранящейся в виде символьного вектора

Units

Единицы переменной, хранящиеся в виде символьного вектора

Categories

Категории, хранящиеся в виде массива ячеек символьных векторов

Counts

Количество элементов в каждой категории, хранящихся в виде числового массива

NumMissing

Количество отсутствующих значений (<undefined>)

CustomProperties (опущен, если нет пользовательских свойств)

Имена и значения пользовательских свойств, связанных с переменной, хранящиеся в виде структуры

Другое

Size

Размер переменной, хранящейся в виде числового массива

Type

Тип переменной, хранящейся в виде символьного вектора

Description

Описание переменной, хранящейся в виде символьного вектора

Units

Единицы переменной, хранящиеся в виде символьного вектора

CustomProperties (опущен, если нет пользовательских свойств)

Имена и значения пользовательских свойств, связанных с переменной, хранящиеся в виде структуры

Если T является расписанием, то s также имеет поле с сводкой времени строки. Только для времени строки расписания, сводка включает в себя TimeStep поле. Если время строки монотонно увеличивается или уменьшается на фиксированный временной шаг, то TimeStep имеет числовое значение. Если время строки нерегулярно, то TimeStep является NaN.

Поля для сводки времени строк расписания

Описание полей

Size

Размер вектора времени строки, хранящегося в виде числового массива

Type

Тип данных, хранящийся в виде символьного вектора

Min

Минимальное значение

Median

Медианное значение

Max

Максимальное значение

NumMissing

Количество отсутствующих значений (NaT или NaN)

TimeStep

Шаг времени между последовательными временами строк (NaN если нерегулярно)

Подробнее

свернуть все

Сводная таблица

Сводка таблицы отображает описание таблицы из T.Properties.Description за которым следует информация о переменных T.

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

  • Имя: Размер и тип данных - Имя переменной из T.Properties.VariableNames, размер переменной и тип данных переменной.

  • Единицы измерения - переменные единицы измерения из T.Properties.VariableUnits.

  • Описание - Описание переменной из T.Properties.VariableDescriptions.

  • Пользовательские свойства: - имена пользовательских свойств, которые применяются к переменным, и их соответствующие значения, из T.Properties.CustomProperties. Если пользовательские свойства отсутствуют, этот раздел пропускается.

  • Значения - включены только для числовых, логических, categorical, datetime, или duration переменные.

    • Числовой, datetime, или duration переменные - минимальное, среднее и максимальное значения. Кроме того, количество отсутствующих значений (NaNs или NaTs) включается, когда это число больше нуля.

    • Логические переменные - количество значений true и количество значений, которые false.

    • categorical переменные - количество элементов из каждой категории. Кроме того, количество неопределенных элементов включается, когда это число больше нуля.

Если T является расписанием, то резюме содержит ту же информацию о векторе времени строки.

Расширенные возможности

Представлен в R2013b