BioStatistica — 02. Тема 2. Программа Statistica

 

Онлайн-конспект курса
"Биометрическая обработка данных в зоологии и экологии"

Д.А. Шабанов

Содержание курса. Тема 1. Основные понятия биометрии Тема 2. Использование программы Statistica Тема 3. Визуализация данных (на примере результатов описания зеленых лягушек)
Биометрия-01 Биометрия-02 Биометрия-03

 

Тема 2. Использование программы Statistica

2.1. Почему именно Statistica?

Мы приступили к изучению биометрии. Оно может быть организовано двумя разными способами. При первом из них (его можно обозначить "ab ovo") студентам объясняют математические основы изучаемых методов, выводят необходимые формулы и доказывают объясняющие их теоремы. Если студент освоил такой курс, решение конкретных проблем, связанных с тем или иным набором данных в его области исследований оказывается не такой уж сложной задачей. Второй способ ("делай, как я") заключается в том, что студентам показывают, как решать типовые задачи с помощью того или иного инструментария.

Первый способ сложнее. Люди, успешно справившиеся с обучением по первому способу, имеют более высокую подготовку и более универсальны. Однако, в значительной степени, первый способ работает по принципу "все или ничего". Ты или освоил основные подходы и можешь их применять, или не знаешь, что делать и теряешься при необходимости решить простейшие задачи. Второй способ "демократичнее" и позволяет легко решать типичные задачи. Увы, без понимания основ методов люди, которых научили повторять какие-то последовательности действий, но не объяснили их смысл, часто делают ошибки. Еще одним недостатком второго подхода является привыкание к определенным программам (инструментам для решения типовых задач). Естественно, что для разных категорий студентов нужен или первый, или второй способ, или их сочетание. Опыт преподавания биометрии студентам-биологам свидетельствует, что им, преимущественно, нужен подход "делай, как я".

Реализация подхода "делай, как я" требует выбора программ, с помощью которых будет проводиться обучение. Тут приходится выбирать между пятью категориями программ:
— бесплатные любительские и полупрофессиональные программы; их немало, но среди них нет универсальных, и, к тому же, чуть не каждая из них требует своего подхода (хотя некоторые решения следует признать удачными, как, например, этот набор онлайн-калькуляторов);
— вероятно, самая удачная из бесплатных программ, созданная палеонтологами как упрощенный и бесплатный аналог пакета Statistica — программа PAST; скачать его последнюю версию можно тут, а руководство пользователя — тут и тут
— свободное ПО; лидер в этой области — среда R: мощнейший программный пакет (или язык) для статистической обработки; в типичном случае требует работы с командной строкой;
— платное или свободное ПО, не предназначенное для решения статистических задач специально, но представляющее широкие возможности для работы с данными и, в том числе, и их статистической обработки; к этой категории относятся Excell и Access, компоненты Microsoft Office, а также их бесплатные аналоги;
— платные профессиональные специальные программы; лидерами рынка в этой области являются программы SPSS и Statistica.

Использование программ четвертой категории позволяет в наибольшей степени сосредоточиться на сути решаемых проблем. Увы, оно сопряжено с необходимостью выбора между покупкой дорогой (очень дорогой!) лицензии или использования взломанных, пиратских версий. Тем не менее, по мнению автора, именно такие программы позволяют быстрее всего получить опыт работы с данными, в том числе, и с использованием методов многомерного анализа, требующих сложнейших вычислений.

Автор начал работать с программой Statistica фирмы StatSoft (в ее предыдущих реинкарнациях) около 1992 года (тогда она называлась CSS, и она была предназначена для работы в DOS). В то время именно эту программу использовали квалифицированные зоологи Москвы и Киева. Сделанный тогда выбор и предопределил ту программу, на которую и ориентировано изложение в этом пособии. Надо признаться, что человеку, который привык работать в программе с оконным интерфейсом, выбирая опции из предложенного списка, чрезвычайно тяжело перейти к работе в режиме командной строки, требующему помнить имена и синтаксис необходимых программ. Понимая, что осваивать среду R совершенно необходимо, автор весьма слабо продвинулся в этом направлении. 

В дальнейшем автор планирует расширить данное пособие пояснениями, как реализовать описанные в нем методы в программе PAST и среде R. До того для знакомства с R можно лишь рекомендовать достаточно многочисленные источники, доступные в Сети, описывающие использование этого пакета. Среди них  — посвященные R блоги, в том числе r-analytics и statinr. Очень полезно пройти русскоязычный курс по работе в R.

Есть в Сети и ресурсы, посвященные работе в Statistica; среди них особо можно рекомендовать замечательный портал Статосфера

 

 

2.2. Программа Statistica

Итак, программа Statistica, который выпускает фирма StatSoft, предоставляет замечательные возможности для изучения биометрии. В настоящее время доступен ряд версий этой программы (на момент написания данного текста последней версией является 13-я). Эта программа распространяется коммерчески и является весьма дорогой; в настоящее время доступны пиратские, «взломанные» версии. Их использование является нарушением буквы закона, и решение об использовании такой версии является делом совести человека, который его принимает.

В настоящее время широко распространены как оригинальные, англоязычные версии программы Statistica, так и ее различные локализации (переводы на русский язык). Следует заверить, что непрофессионально переведенным русскоязычными вариантами программы пользоваться сложнее, чем оригинальным, даже для человека, который не знает английского языка. В настоящее время существует 10-я версия программы Statistica, переведенная на русский язык российским представительством производителя, фирмы StatSoft.

Комментарии по инсталляции (установке) программы здесь приводиться не будут: любой установочный пакет программы содержит указания о том, как это следует делать. Доступны как версии программы Statistica, которые нуждаются в инсталляции (и применении процедур "взлома"), так и Portable-версии, которые можно просто копировать на жесткий диск или флешку и запускать с них. Является ли использование таких версий программы предосудительным? На этот вопрос каждый пользователь должен найти для себя ответ сам. Важно напомнить, что в данном пособии речь идет об обучении использованию программы Statistica, т.е. это пособие можно рассматривать как рекламу данной программы. Автор надеется, что все, научившиеся пользоваться программой Statistica, приобретут легальную версию, когда будут использовать ее для получения прибыли. 

Следует обратить внимание только на важное обстоятельство, касающееся удобства использования установленной программой. Statistica может использоваться не только для исследования, но и в решении серьезных производственных задач (например, для формализованной обработки данных о клиентах в банках). Для таких задач полезной может быть способность программы собрать в единый комплекс результаты разных способов обработки какого-то объекта. Поэтому Statistica способна формировать «рабочие тетради», Workbooks, собирающие в единое целое все результаты действий пользователя.

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

Рис. 2.2.1. Чтобы переключить программу Statistica на режим вывода в отдельных окнах, следует пройти по пути Tools / Options / Output Manager (Сервис / Параметры / Диспетчер вывода) и отметить соответствующий вариант вывода     

Сразу после инсталляции программа предложит работать с инструментом для поиска данных (DataMiner) или настроить режим запуска. Самое простое — закрыть стартовое окно и окно DataMiner и перейти к работе с таблицами данных.

Рис. 2.2.2. Начало работы с программой Statistica. Для нашей работы нужно окно с таблицей данных, другие окна можно закрыть     

 

2.3. Структура таблицы данных Statistica 

Таблица данных в программе Statistica организованна весьма жестким образом: она состоит из строк, которым присвоено название наблюдения (Cases) и столбцам, которые названы переменными (Variables). Строки и столбцы можно добавлять (Add...), перемещать (Move...), копировать (Copy...) и удалять (Delete...).

Рис. 2.3.1. Для работы с переменными и наблюдениями служат соответствующие пункты меню (в данном случае выделено меню для управления наборами переменных Variables, "Vars").     

При редактировании данных они вводятся в ячейки таблицы. Однократный щелчок мышью на ячейке выделит ее, двойной (или нажатие клавиши F2 при выделенной ячейке) переведет в режим ее редактирования. Рамочка вокруг выделенной ячейки станет тоньше, и внутри нее появится курсор. Теперь в ячейку можно вводить данные.

Рис. 2.3.2. Ячейка на рисунке слева выделена (выделить можно одну или большее количество ячеек). Ячейка справа находится в режиме редактирования, можно изменить ее содержание (например, добавить в нее данные)          

Нажав на левую клавишу мыши и проведя курсором над таблицей данных можно выделить блок — прямоугольную область из ячеек.

Над заголовками столбцов находится поле, в которое можно записать название таблицы — заголовок таблицы.

Рис. 2.3.3. Вставить в заголовок таблицы какие-то пояснения того, что она из себя представляет, бывает довольно полезно     

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

Рис. 2.3.4. Редактирование имен наблюдений     

Забегая вперед, можно сказать, что в графических результатах многих статистических анализов целесообразно подписывать имена наблюдения, соответствующие отдельным объектам. Поэтому надо постараться сделать так, чтобы эти имена были достаточно короткими и достаточно выразительными.

Рис. 2.3.5. Чтобы вызвать диспетчер имен наблюдений, необходимо щелкнуть правой кнопкой мыши на каком-то имени наблюдения и пройти по пути Case Name Management / Case Names Manager.  С помощью этого диспетчера можно переместить в имена содержимое какой-то переменной, или наоборот, создать переменную, которая будет содержать имена наблюдений. Для того, чтобы вызвать список переменных, нужно дважды щелкнуть мышью в окошке Variable          

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

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

Рис. 2.3.6. Двойной щелчок мышью на границе между заголовками столбцов приводит к автоматической настройке их ширины. В первом случае измениться ширина только одного столбца (по правому краю которого производится щелчок), а во втором – всех выделенных столбцов, то есть всей таблицы          

В ряде случаев бывает необходимо перестроить таблицу данных, сделав ее строки столбцами, а столбцы — строками (эта операция называется транспонированием). Это делается при помощи команды Data / Transpose (Данные / Транспонировать). У этой команды есть два варианта — транспонировать выделенный блок (он обязательно должен иметь одинаковое количество строк и столбцов) и транспонировать весь файл (количество столбцов и строк в нем может отличаться).

 

2.4. Действия с выделенными ячейками 

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

Рис. 2.4.1. Группа ячеек выделена; курсор находится на других ячейках и имеет вид «пустотелого» плюса     

При выполнении этих операций следует обращать внимание на изменение формы курсора. 

Рис. 2.4.2. Курсор находится на краю выделенного блока; выполнив в этом положении двойной щелчок и «потянув» мышью, блок данных можно переместить на требуемое место     
Рис. 2.4.3. Курсор находится в правом нижнем углу выделенного блока; выполнив в этом положении двойной щелчок и «потянув» мышью, можно продолжить арифметическую прогрессию, заданную в блоке, на соседние ячейки     

Если при «растягивании» арифметической прогрессии область, которая должна быть заполнена создаваемым рядом, выйдет за пределы таблицы, программа спросит, расширить таблицу до требуемого объема или ограничить прогрессию имеющимися ячейками.

Рис. 2.4.4. «Растягивание» арифметической прогрессии на несколько ячеек          

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

Рис. 2.4.5. Чтобы выделить ячейки таким образом, необходимо удерживать нажатой клавишу Ctrl     

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

Рис. 2.4.6. Чтобы осуществить контекстную замену, необходимо пройти по пути Edit / Replace (Правка / Замена), нажать Ctrl+H или нажать на соответствующую кнопку на «приборной панели» (на рисунке эта кнопка "нажата", она расположена недалеко от правого верхнего угла рисунка)     

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

Рис. 2.4.7. Результат контекстной замены, показанной на предыдущем рисунке     

 

2.5. Работа со строками и столбцами

Основные инструменты для работы со строками и столбцами таблицы данных находятся в пунктах меню, предусмотренных по умолчанию, «Переменные» и «Наблюдения». Те же функции, которые находятся в этих меню, доступны через опцию «Данные» в основном меню программы. 

Рис. 2.5.1. Управление столбцами и строками доступно через меню Data (Данные) или через специальные меню Vars (Переменные) и Cases (Наблюдения)     

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

Рис. 2.5.2. При добавлении переменных программа Statistica по умолчанию предлагает вставить их перед тем столбцом, в котором находится выделенная ячейка     

При добавлении столбцов можно указать их количество, место (после какого столбца они добавляются, шаблон названия (по умолчанию — NewVar) и некоторые другие параметры, подробнее рассмотренные позже. При перемещении столбцов также можно указать с какого столбца начинается перемещаемая группа, каким заканчивается и в какое место эта группа столбцов должна быть перемещена.

Аналогично происходит добавление строк (наблюдений).

Рис. 2.5.3. При добавлении строк их также по умолчанию предлагается вставлять перед той строкой, в которой находится выделенная ячейка     

 

2.6. Спецификации переменных

В таблице данных программы Statistica над каждым столбцом находится его заготовок. Заголовки пронумерованы порядковыми номерами и по умолчанию называются Var 1, Var 2 и т.д. Чтобы изменить свойства столбца, нужно дважды щелкнуть на его заголовке.

Рис. 2.6.1. Дважды щелкнув на заголовке столбца можно перейти в режим спецификации — редактирования свойств переменной. Здесь можно задать ее название, тип данных, шрифт, количество отображаемых десятичных знаков (для числового режима), формулу для ее пересчета а также некоторые другие свойства     

От одной спецификации легко переходить к соседним, используя кнопки со стрелками, расположенные в верхней правой части диалогового окна (под кнопкой «Отмена»). Чтобы увидеть весь список переменных и редактировать любую из них, следует выбрать режим Vars / All Specs... (Переменные / Все спецификации...). Из окна спецификаций одной переменной к редактору можно перейти с помощью кнопки All Specs... (Все спецификации…).

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

Рис. 2.6.2. Открывание редактора спецификаций переменных     

В первую очередь студентам следует освоить работу с названиями переменных и формулами для их вычисления.

Рис. 2.6.3. Редактор спецификаций переменных 

 

2.7. Числовая и текстовая формы данных

Данные, введенные в ячейки таблицы данных, могут иметь как числовой, так и текстовый вид. В режиме, при котором десятичным разделителем является запятая, выражение «1,1» будет интерпретировано как число (одна целая и одна десятая), а «1.1» — как текст.

Данные в программе Statistica могут иметь разный тип. В том, который данные имеют по умолчанию, двойном типе данных, всем текстовым значениям, введенным в данный столбец, придается в соответствие определенное число. Перейти из режима отображения текстовых данных в режим отображения числовых можно, поставив или сняв галочку напротив пункта Display Text Lables (Показать текстовые метки) в меню View (Вид).

Рис. 2.7.1. В статистике можно переходить от текстового отображения данных к числовому и обратно: View / Display Text Lables (Вид / Показать текстовые метки). На этих рисунках разница в отображении видна для переменной «Группа»          

Соответствие между текстовыми и числовыми значениями задается в редакторе текстовых меток (Text Lables...), который для каждого конкретного столбца можно вызвать, пройдя по пути Vars / Text Lables... (Переменные / Текстовые метки) или вызвать из окна спецификаций переменной, как это показано на рисунке.

Рис. 2.7.2. Двойной щелчок на заголовке первой переменной (т.е. на надписи "1 Группа") вызвал окно спецификаций переменной. В этом окне есть кнопка для входа в редактор текстовых меток для этой переменной – Text Lables...

По умолчанию новое значение, введенное в определенный столбец, получает числовое значение 101, следующее — 102 и так далее. Эти соответствия могут быть изменены; при этом Statistica «переспросит», следует ли перекодировать имеющиеся данные в новые кодировки. Так, в показанном на рисунке примере текстово-численные соответствия установлены для переменной «Группа». Такие соответствия облегчают набор данных: в соответствующей ячейке не нужно словами писать «первая», и достаточно просто поставить единичку.

Рис. 2.7.3. Редактор текстовых меток позволяет задать соответствия между текстовыми и числовыми данными. Обратите внимание на кнопки со стрелочками: с их помощью можно переходить в режим редактирования текстовых меток соседних переменных

Иногда в процессе набора данных в ячейки попадают какие-то неверные текстовые фрагменты. Даже если они оказываются удалены из файла данных, они вместе со своими численными соответствиями остаются в редакторе текстовых меток, накапливаясь там как нежелательный «мусор». Такие неиспользуемые данные следует удалять (выделить и нажать кнопку «Delete Row»). 

В процессе использования программы можно столкнуться с проблемами неадекватного отображения кириллических шрифтов. Одним из универсальных советов является рекомендация использовать латиницу (например, все названия и обозначения писать на английском языке). Если все-таки использовать русский язык, могут возникать проблемы с его отображением.

Рис. 2.7.4. Пример неправильного отображения кириллических символов (т.н. "козявушки")

Такие проблемы можно исправить, подобрав правильно отображающийся шрифт.

Рис. 2.7.5. С этим шрифтом русские надписи отображаются, как надо
 

 

2.8. Формулы для пересчета данных

В нижней части окна спецификаций переменной (или в правой части редактора спецификаций переменных) можно задать формулы, по которым происходит пересчет данных. Формула начинается со знака «=», который показывает, что данную переменную необходимо пересчитать. В формула используются арифметические знаки (+, -, *, /), знак возведения в степень (** или ^), скобки, а также сокращенные обозначения различных функций. Подсказки по синтаксису этих обозначений появляются во всплывающих окнах (хинтах).

Рис. 2.8.1. Если в окошке Function guide (Просмотр функций) стоит галочка, программа Statistica будет предлагать подсказки по мере набора формул в окне спецификаций переменной     

В формулах можно использовать обозначения других переменных. Их можно обозначать или указывая их имена, или обозначая их по номерам после буквы «v» (сокращения от «variable»), например, v1 или v 15.

В формулах можно приводить логические условия. Это выражения, которые заключаются в скобки и содержат внутри символ «=» или знаки «>» больше, «<» меньше, «>=» больше или равно, «<=» меньше или равно. Например, переменная, в окне для формул которой введено =( v1=10) примет значение 1, если переменная 1 равна 10 (верное логическое условие считается равным единице) или 0, если переменная 1 не равна 10 (неверное логическое условие считается равным нолю).

Выражение, которое придаст переменной значение 1 в том случае, если переменная Number меньше 10 и 2, если переменная Number больше или равна 10, может выглядеть так: =(Number<10)+(Number>=10)*2. Как можно убедиться, эта формула содержит два логических условия. Если переменная Number меньше 10, первое слагаемое равно 1, а второе равно 0; если соответствующая переменная больше или равна 10, первое слагаемое равно 0, а второе равно 2.

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

В том случае, если формула написана в соответствии с правилами и ссылается на переменные, которые имеются в файле, при закрытии окна спецификации переменных Statistica предложит пересчитать переменную. Подсчет будет произведен только для тех строк, в которых используемые формулой ячейки содержат какие-то данные.

Пересчитать переменные в любой необходимый момент можно при помощи команды Vars / Recalculate Spreadsheet Formulas... (Переменные / Пересчитать), клавиатурного сочетания Shift+F9 или при нажатии на соответствующую кнопку. 

Рис. 2.8.2. Окно пересчета данных. Курсор показывает на кнопку, которая его вызывает (слева вверху, «нажата»). Обратите внимание на опцию Auto-recalculate when the data change (Автопересчет при изменении данных)     

В некоторых случаях бывает удобно включить режим автопересчета при изменении данных. В этом случае, стоит лишь изменить какое-то содержимое одной из ячеек, все остальные значения, использующие то, которое было изменено, будут автоматически пересчитаны. Впрочем, этот режим удобен не всегда. Например, при его использовании режим «отката» (возврата последнего изменения), который вызывается командами Edit / Undo... (Правка / Отменить), Ctrl+Z или нажатием на соответствующую кнопку, отменяет не те изменения, которые были сделаны пользователем, а результаты пересчета.

При работе с формулами следует учитывать, что ячейки, которые не содержат никаких данных, на самом деле содержат определенное число – код пропущенных данных. По умолчанию это число равно -9999, но его можно изменить в окне спецификаций переменной или редакторе спецификаций переменных. Большинство используемых в формулах функций «работают» только с ячейками, куда введены какие-то иные данные, чем код пропущенных данных. В те ячейки, содержимое которых пересчитывается по формулам, ссылающимся на пропущенные данные, тоже вставляется код пропущенных данных. Для формул, работающих со столбцами, где есть пропущенные данные, может быть полезно использовать логические условия наподобие IsMD(v1), которое принимает значение 1 если в данной строке соответствующей переменной нет данных (точнее, находится код пропущенных данных), и значение 0 — когда данные в соответствующей ячейке есть. 

Рис. 2.8.3. Для переменной «Итог» введена формула, вычисляющая сумму переменных «Признак_1» и «Признак_2» для объектов (строк) из первой группы и произведение этих признаков для объектов из второй группы. Чтобы формула работала, необходимо, чтобы первой группе в редакторе текстовых меток соответствовал код 1, а второй – 2. Приведенный пример не очень удачен, так как в нем используются русские имена для переменных     

В том случае, если с файлом проводится достаточно длительная работа, обозначать переменные по их номерам (к примеру, как v 15) нецелесообразно. Добавление, удаление или перемещение переменных (напомним, что их общий список доступен из меню All Specs) приведет к изменению их нумерации и собьет работу использующих их формул. В формулах лучше указывать имена переменных. Из этого следуют пожелания по тому, как следует называть переменные. В их названиях нежелательны пробелы и арифметические знаки. Если в имени переменной очень хочется использовать пробел, его лучше заменить нижним подчеркиванием (_). Если все-таки эти правила нарушаются, имя переменной в формуле можно взять в одинарные кавычки, но это является дополнительным усложнением формулы, повышающим шансы запутаться при ее написании, а особенно — при поиске ошибок в формуле, которая работает не так, как хочется.