d9e5a92d

Нарисовать: графика

Можно дать несколько советов по созданию do-файлов ,
- Для того, чтобы гарантировать воспроизводимость всех результатов, необходимо оформлять все полезные действия, вплоть до изменения значения одной переменной в одном наблюдении, как строки do-файла. Автору этих строк неоднократно приходилось выяснять вместе с коллегами, почему у них получаются разные результаты при использовании вроде бы одних и тех же методов обработки и анализа и вроде бы одних и тех же файлов данных, и именно для исключения подобных ситуаций и разработаны эти советы,
- На каждый отдельный исследовательский проект надо заводить отводить отдельный каталог, а исходные данные сохранять неизменными и соответствующими исходным статистическим первоисточникам (справочникам, известным базам данных и т.п.), вынося все необходимые поправки и изменения в do-файлы. После существенных изменений в данных (таких, как команды reshape, merge или создания большого количества новых переменных не забывайте придавать им мет-
ки!) стоит сохранить полученные (промежуточные) результаты. Название файла должно отражать его происхождение или содержание, либо же должно содержать признаки того, что данные вторичны (например, можно начинать названия несущественных файлов с тильды или подчеркивания). Более подробную информацию о происхождении файлов данных можно записывать в эти файлы командами label data и notes,
- Стоит каждый do-файл начинать с нуля, а log-файл, отслеживающий происходящее, должен открываться в том же do-файле. Отслеживать результаты работы будет проще всего, если имя log-файла совпадает с именем do-файла (или, если do-файл должен использовать какие-то параметры, эти параметры также должны фигурировать в названии log-файла, благо St at а поддерживает длинные имена Windows),
Примерная рыбабо-файла, который называется, скажем, income98.do, будет такова:
clear
version 6
set memory 10m
log using income98, replace
use income98
* еще какие-то действия
log close exit
Stata Corporation предлагает превосходные Internet-курсы по программированию в пакете Stata, Автор этого пособия участвовал в таких курсах и считает, что они заметно помогли ему в освоении возможностей пакета.
См, также: [U] 19 Do-files

Нарисовать: графика

Мир графических средств пакета St at а начинается командой graph, у которой имеется добрая сотня разнообразных опций на разнообразные случаи жизни. Наиболее часто используемые графики реализованы в виде отдельных команд,
graph переменные , [опции]
Команда graph одна, но вариантов воплощения у нее очень много. Краткий рассказ об этих возможностях дается уроком tutorial graphics.
Если команда graph содержит одну переменную, то эта команда интерпретируется как задание построить гистограмму. По умолчанию Stata разбивает диапазон изменения переменной на пять интервалов (bins), что, как правило, недостаточно информативно, поэтому имеет смысл увеличить число интервалов опцией graph ... , bin(50), Можно наложить поверх гистограммы плотность нормального распределения с аналогичным средним и дисперсией для визуального контроля нормальности с помощью опции graph ... , norm.

Еще несколько разновидностей графиков, описывающих одну переменную, даются опциями graph ... , box (график box-whisker, отражающий основные квантили распределения) I star (роза ветров) I bar (столбцовая диаграмма) I ріе (круговая диаграмма). Более подробную помощь можно найти по ключевым словам grhist и graph.
Диаграмма рассеяния выводится командой graph, но с двумя аргументами: graph "ось у" "ось х", Из основных опций (перечисляемых через запятую в командной строке), которые имеет смысл указывать для диаграммы рассеяния, стоит упомянуть:
- symbol символ, которым будет помечаться выводимое наблюдение; symbol(.) выведет маленькую точку, symbol (о) маленький кружок, symbol ( [переменная] ) значение указанной переменной; symbol ( [_п] ) номер наблюдения,
- connect соединение точек; connect(.) означает, что точки соединять не надо, connect (1) что точки надо соединить тонкой линией; connect (s) провести сплайн через соседние точки. Сплайн является одним из видов непараметриче-
ской регрессии (см, параграф 2,6,5), В седьмой версии пакета можно задать стили линий, указывая их в квадратных скобках после символа, задающего соединение точек: connect (1 [-] ) пунктирная линия, connect (1 [_] ) длинная пукнтир-ная линия, connect (1 [.]) короткая пунктирная линия. Эти стили можно сочетать connect (1 [- . ] ) выдаст штрих-пунктирную линию,
- sort перед соединением точек, задаваемой опцией connect, отсортировать наблюдения по переменной на оси x (во избежание заполнения экрана паутинообразной ломаной),


- bands количество соседних точек, используемых для вычисления сплайна. Чем ниже число, задаваемое этой опцией, тем более гладкой будет кривая непараметрической регрессии,
- density количество точек на графике сплайна. Чем больше это число, тем более гладким будет изображение сплайна. Гладкость самого сплайна регулируется опцией bands,
- xlab и ylab числовые метки на осях,
- xtick и ytick "зарубки" на осях,
- хііпе и уііпе вертикальные и горизонтальные линии на графике,
- xscale и yscale диапазон осей,
- title заглавие графика, В данном контексте Stata не понимает русский текст.
Эти и другие опции описываются в подсказке grtwoway.
Если в команде graph указать более двух переменных, то Stata построит графики зависимости всех переменных от последней, т.е. список переменных интерпретируется как yi,... , yn-\,x. Матрица попарных диаграмм рассеяния выводится с помощью опции
graph, matrix.
Графики Stata можно сохранять в собственном формате .gph, указывая после любой графической команды опцию graph ... , saving (имя файла,). Эти сохраненные графики можно потом просмотреть заново командой graph using имя файла(ов), Stata позволяет сочетать на одном рисунке несколько графиков - см, подсказку по команде
help grother. Кроме того, через меню File можно сохранять графику и в виде, понятном Windows-приложениям (в виде растровой графики ,bmp или векторной ,wmf), или переносить в другие приложения через буфер Windows,
Для встраивания графики Stata 6 в КТЕХ надо приложить определенные старания. Общее направление действий сохранить в формате PostScript (,ps) ^ конвертировать в Encapsulated PostScript (,eps) или PDF ^ экспортировать в ВТрХ средствами пакета graphicx, В UNIX-овых версиях Stata сеть утилиты gphpen и gphprint, которые позволяют сохранить графики в виде PostScript-файла, Пользователям Windows, видимо, необходимо установить PostScript-принтер и получать PostScript-файлы, посылая графики на печать и отмечая опцию Печатать в файл, В качестве PS-принтера можно использовать и Acrobat Distiller из пакета Adobe Acrobat ( не Acrobat Reader), Возможно, впрочем, что полученный таким образом файл будет содержать специфические команды принтера, поэтому его предварительно необходимо пропустить через конвертер, который оставил бы только "ортодоксальные" ключевые слова PostScript, Если используется пакет, создающий из ВТЕХовекого файла PDF-файл (например, pdflatex пакета fpTEX), то можно из Stata отправлять графические файлы на печать в Acrobat Distiller и получать PDF-файлы с рисунками, которые потом, возможно, надо будет обрезать в Adobe Acrobat,
Все эти процессы упрощены в Stata 7 и делаются одной командой translate, которая конвертирует графики в форматы PostScript и Encapsulated PostScript,
См, также: [G]

Уточнить: команды для удовлетворения любопытства

В данном разделе будет рассказано о командах, показывающих определенные параметры состояния Stata, и о случаях, когда бывает полезна представляемая ими информация, query
Выводит установки текущих параметров (в т. ч. размер матрицы, см. выше set matsize, уровень значимости по умолчанию статистических тестов level, в %, имя текущего log-файла, и т. и.). Эти установки можно менять с помощью команды set,
примеры которой приводились в разделе 3.2.
about
Выводит основные паметры Stata и компьютера, на котором работает пакет: версия программы, дата создания ехе-файла, общий и доступный объем памяти.
memory
Выводит информацию о том, сколько памяти отведено для Stata и как она используется. Рекомендуется иметь памяти по меньшей мере на 15-20 % больше, чем требуется для данных, поскольку очень многие команды создают временные переменные, временные матрицы или используют память иным образом.
adopath
Выводит информацию о том, в каких каталогах Stata ищет ado-файлы с новыми программами (см. с. 72 об ado-файлах). Необходимо для установки новых компонент Stata (например, STB-дополнений при их ручном скачивании из Internet, см. параграф 3.17), а также при написании собственных программ в виде ado-файлов, which название команды,
Выводит информацию о том, в каком файле и в каком каталоге найден ado-файл, выполняющий требуемую команду, а также информацию о версии команды. Может оказаться полезным, если программа дорабатывается автором и необходимо отслеживать наличие последних версий, а также при появлении сообщений об ошибках для обращений в службу технической поддержки Stata или к автору программы.

Законнектитьея: Internet-возможности Stata

Адрес Stata в Интернете . На этом корпоративном сайте размещаются новости (выход обновлений и новых версий, дополнений к Stata STB, встреч пользовательских групп, объявления об Интернет-курсах по программированию и использованию пакета). Еще один очень полезный адрес . Здесь располагается поисковая система архива ЕеРЕе (Research Papers in Economies), умение пользоваться которой само по себе полезно для всякого экономиста.

Одной из составных частей ЕеРЕе является архив программ SSC-IDEAS (Statistical Software Components), написанных пользователями Stata. В этом архиве содержится несколько сотен различных программных модулей, что вполне сопоставимо е количеством команд в
минимальном варианте установки. Из прочих ресурсов стоит упомянуть лист поддержки statalist@hsphsun2.harvard.edu, на котором можно получить квалифицированную помощь как от других пользователей Stata, так и от самих разработчиков, вплоть до президента корпорации Уильяма Гулда (William Gould), По его словам, оперативная и персональная поддержка пользователей это один из важнейших приоритетов компании, От себя добавлю это еще и одно из самых больших ее достоинств, особенно по сравнению с огромными монстрами типа SAS,
Начиная с шестой версии, Stata обладает рядом полезных возможностей, реализуемых через всемирную сеть Интернет, Это обновление пакета, а также доступ к пользовательским программам, update
Позволяет загрузить официальные обновления Stata через Интернет. Запрос update query показывает, что нужно обновить (статистические компоненты, находящиеся в ado-файлах, или исполняемый файл wstata.exe). Затем можно обновить необходимые фрагменты с помощью update ado, update executable или update all. net [from URL]
Установка программ Stata через Internet. Эта команда ищет по указываемым Интернет-адресам (URL) или, по умолчанию, на вышеуказанном сайте Stata описания пакетов, которые может установить пользователь, скачивает необходимые файлы и устанавливает их на вашем компьютере, webseek ключевые слова
Осуществляет поиск в Internet команд Stata, соответствующих указанным ключевым словами, webseek обращается на сервер Stata, на котором содержится информация о программах STB и других архивах программ Stata, по которым и осуществляется рекурсивный поиск. В седьмой версии команда webseek заменена на net search.

Помимо этих команд, работающих через Internet, Stata может выполнять многие действия, связанные е файлами, используя URL файлов вместо их имен. Так, вполне осмысленная команда
use
загрузит ценный файл auto,dta, на тот случай, если вы случайно стерли оригинал,
поставляющийся вместе с пакетом. Можно получать через Интернет текстовые файлы
с данными и конвертировать их в файлы Stata командами infile, infix, insheet, и т п
Для корректной работы через прокси-сервер необходимо установить его параметры в меню Prefs/General Preferenees/Internet Prefs,
См, также: [U] 32 Using Internet to keep up to date.

Надстроить: расширение возможностей Stata

Stata динамичный и открытый пакет. От одного до трех раз в месяц Stata выпускает обновления на уровне ado-файлов, доступные по команде update, и примерно раз в квартал выходят обновления исполняемого файла. Однако основная динамика происходит на листе statalist и на архиве программ SSC-IDEAS, где за день может появиться с десяток новых команд (написанных пользователями Stata для решения своих исследовательских задач, либо в качестве ответа на вопросы, задаваемые на statalist),
Stata публикует официальные дополнения к пакету под названием Stata Technical Bulletin (или, сокращенно, STB), Они выходят раз в два месяца, и состоят из программ (распространяемых бесплатно через Интернет) и небольшой брошюры, похожей по формату на руководства пользователя Stata, Для того, чтобы установить у себя программы из этих бюллетеней, надо отдать команды net
net cd stb
или обратиться к меню Help/STB and User-written Programs для доступа к ado- и Ыр-файлам на сервере Stata,
В предыдущих версиях Stata всех этих возможностей работы через Интернет не было, поэтому для установки STB-дополнений или программ из архива SSC-IDEAS было необходимо скачивать их вручную с Интернета, а потом либо копировать в каталог, зарегиетированный в adopath (см, с, 93), либо устанавливать средствами Stata командой install. Пользователи 6-й или 7-й версии, у которых нет постоянного или хотя бы модемного соединения с Интернетом, будут вынуждены ходить с дискетами к знакомым, у которых доступ есть, скачивать необходимые команды на дискету, а потом устанавливать их командой install from а:.
Есть еще один технический момент, связанный с представлением текстовых файлов в Windows и UNIX, В этих двух операционных системах концы строк представляются по-разному, причем UNIX понимает тексты Windows, но не наоборот, В архиве SSC-IDEAS находятся программы, написанные в обоих форматах. При копировании командой net Stata корректно обрабатывает концы строк, однако при описанном выше "ручном" копировании возможны проблемы у пользователей, работающих в Windows, Симптомом того, что у вас возникла проблема, связанная с концами строк, является неработоспособность евежеуетановленных файлов Stata возвращает ошибку с кодом 199 (unrecognized command: xyz not defined by xyz.ado команда не распознана; программа xyz не определена в файле xyz.ado); при этом Stata находит файл помощи на новую команду, но в нем все оказывается перепутано.

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

Например, страничка автора этой книги, посвященная Stata, размещается по адресу: , На ней находятся программы, уроки (tutorials) и PDF-файл с этой книгой.
Частным случаем пользовательских программ являются функции для команды egen. Они позволяют в какой-то степени обойти невозможность написания функций пользователя, применимых наравне со встроенными. Файлы, в которых содержатся такие функции, имеют префикс _g и должны быть написаны в соответствии с определенными требованиями на обработку входных аргументов,

Научиться на опыте: сообщения об ошибках

В соответствии с общепринятыми программистскими соглашениями, каждая команда и программа должна уметь сообщать о результатах своей работы. Чаще всего это делается в виде целочисленного кода завершения программы. Нулевое значение этого кода свидетельствует об отсутствии каких-либо ошибок и проблем при выполнении задания;
ненулевое, как правило, обозначает те или иные ошибки. Помимо кода завершения, многие программы Si at а сохраняют те или иные результаты своей работы, которые можно получить, в зависимости от выполненной команды, через estimates list (вспомним обсуждение команды regress на е, 83) или results list , См, help estimates и help results,
В окне вывода Stata текст подсвечивается одним из пяти цветов: белым, желтым, зеленым, голубым или красным. Белым цветом показываются команды, отданные пользователем, а также некоторые специфические сообщения; голубым команды, записанные в do-файле, а также запрос на продолжение вывода --more-- (пауза в процессе обработки данных; для получения следующей строки вывода надо нажать Enter, следующей страницы клавишу пробел, как в программе more ОС UNIX); зеленым информационный (постоянный) текст; желтым рассчитываемые числовые значения (переменный текст); красным сообщения об ошибках. Сообщения об ошибках сопровождаются кодом ошибки, по которым можно найти более подробную информацию в [R] error messages или через меню Help/Search/rc код ошибки.

Чаще всего ошибки вызваны неправильным синтаксисом вводимых пользователем команд (использованием одинарного = в условиях if, ссылкой на несуществующую переменную из-за опечатки в названии переменной, ссылкой на несуществующую команду при опечатке в названии команды, попыткой создать вновь уже существующую переменную, и т,п,). Иногда, впрочем, ситуации могут быть более серьезными и свидетельствовать о статистических или вычислительных проблемах например, когда не достигается сходимость итерационных процессов или не хватает наблюдений для оценивания модели или проблемах компьютерных нехватке памяти (сообщение no room to add more variables, см, выше set memory),
В пакете Stata 7 функции голубого цвета несколько изменены: он означает ссылку на файл встроенной подсказки, на URL в Интернете или просто на команду Stata, Можно навести мышку на фрагмент, показанный голубым цветом, и по нажатию левой кнопки мыши Stata покажет необходимый файл помощи, запустит браузер или выполнит необходимую команду, В частности, коды ошибок показываются голубым цветом, и при кликании на коде ошибки показывается файл подсказки, поясняющий, почему возникла данная ошибка.
См, также: [U] 11 Error messages and return codes

Разобраться: прочее

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

Матрицы

Пакет St at а не является матричным, как, например, GAUSS, В нем, однако, реализовано большинство популярных матричных задач и алгоритмов: основные алгебраические действия, обращение, разложение Холецкого, решение задачи на собственные значения, сингулярное разложение. Столбцы и строки матриц можно "называть по именам" (что вполне естественно, например, для ковариационных матриц, возникающих при оценивании параметров статистических моделей).

Знакомство с матричными средствами St at а можно начать с help matrix.
См, также: [U] 17 Matrix expressions

Макросы

Наиболее близким к понятию макросов St at а является, пожалуй, понятие локальной переменной в программировании. Макросы это строки, имеющие содержанием другие строки (в т,ч, числовые значения, записанные в экспоненциальном формате), С их помощью в программах Stata можно устраивать циклы, получать передаваемые подпрограмме значения, и т,п.

Макросы делятся на локальные, которые будут забыты по окончании того процесса, который их создал, и глобальные, доступные всем программам Stata, Среди глобальных макросов есть ряд зарезервированных, описывающих состояние Stata (версия, дата, время, режим работы, пути для поиска ado-файлов и т,п,). Ссылки на глобальные макросы Stata начинаются со знака доллара ($), Так, уровень значимости, по умолчанию используемый для построения доверительных интервалов, обозначается как $S_level и равен по умолчанию 95 (в процентах).
См, также: [U] 21.3 Macros

Русификация

К сожалению российских пользователей, пакет St at а не русифицирован в том смысле, что у него отсутствуют русские описания. Теоретически и технически, русификация выводимых результатов и встроенной подсказки возможна, но объем работы измеряется, как мне кажется, несколькими человеко-годами, так что всерьез на это рассчитывать пока что не приходится.
Тем не менее, St at а может оперировать нелатинскими символами в качестве строк. Русские буквы можно использовать в качестве содержимого строковых переменных, для примечаний, меток переменных и данных, однако нельзя использовать в названиях переменных.

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

С чего начать?

Самое трудное начать работу с пакетом в первые минуты, и это верно для любого программного средства. Один из важнейших навыков, которым необходимо овладеть с самого начала это умение пользоваться встроенной подсказкой (см, раздел 3,5, а также подсказки по ключевым словам help, winhelp).
Другой хороший вариант самообучения и начала эффективной работы воспользоваться встроенными мини-уроками tutorials. Достаточно набрать tutorial в командной строке St at а и дальше St at а сама расскажет, какие мини-уроки у нее есть и как их вызвать.

Первый мини-урок вызывается командой tutorial intro, и именно с него мы начинали наши практические занятия с пакетом Stata, Цель этих мини-уроков не решить какую бы то ни было статистическую задачу, а показать, как работают те или иные команды в практической работе, поэтому при просмотре этих уроков надо обращать внимание не на то, что выводит Stata, а того, что в нее вводится.
Для данного курса прикладной эконометрики автором этого пособия была напиеан-на обучающая программа, демонстрирующая основные средства диагностики регрессий, Эта программа доступна со страницы или, пользуясь интернет-возможностями Stata (см, раздел 3,16), из самого пакета:
. net from . net get aboutreg
Темпы обучения, безусловно, индивидуальны, однако обычно уже нескольких часов достаточно для того, чтобы начать самому вводить команды и понимать, что они означают. Для профессионального овладения пакетом нужны, наверно, недели и месяцы постоянной работы е разными задачами и разными данными, отлаживание собственных программ и попытки разобраться в чужих, участие в интернет-курсах по пакету, предлагаемых разработчиками Stata Согр,, участие в листе рассылки.

Никакая книжка не может заменить самостоятельного активного освоения!

Глава 4 Мониторинг экономического положения и здоровья населения России

В этой главе будет кратко описана имеющаяся в открытом доступе (и потому популярная среди исследователей-экономистов) база данных ELMS (Russia Longitudinal Monitoring Survey, Мониторинг экономического положения и здоровья населения России; ем, Mroz et. al (1999), Swafford (1996)), Это панельное обследование, проводимое совместно Университетом Северной Каролины (Чапел-Хилл), компанией "Парагон", Институтом Социологии РАН, Институтом Питания РАН и, на отдельных этапах, другими организациями, В мае 2001 г, были опубликованы данные девятого раунда. Первые четыре раунда проводились в 1992-1993 гг,, и на настоящий момент признаются организаторами обследования неудачными, В 1994 г, выборка была создана заново, и с тех пор обследования проводятся регулярно в конце осени (за исключением 1997 г,, когда проект не был профинансирован). Файлы данных выложены на ftp-еервер университета, координаты которого (как и многое другое о RLMS) можно найти по адресу .
RLMS является панельным обследованием, т.е, интервьюерами посещаются одни и те же семьи.



Содержание раздела