Вопрос

Мы используем Stata для объединения и анализа данных по всем нашим агентствам в округе каждый месяц.Я хотел бы каким-то образом автоматически создавать отчеты об анализе данных для этих ежемесячных отчетов.Отчет включает сводную таблицу сообщаемых показателей, пару графиков ключевых показателей и аналитическую таблицу, показывающую статистически значимые различия в группах данных.Я бы хотел, чтобы они были в формате pdf и автоматически отправлялись по электронной почте агентствам.Есть идеи по поводу программного обеспечения, которое я могу использовать для автоматизации этого процесса?

Это было полезно?

Решение

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

Хитрость заключается в использовании пакета Stata, такого как -rtfutil-, для экспорта описанных вами таблиц и графики в один документ.На этом этапе вам нужно будет преобразовать его в PDF, прежде чем отправлять по электронной почте.

Вот пример кода для использования -rtfutil- для автоматизации создания документа, включающего таблицу и две графики (плюс несколько абзацев текста) в документе RTF (на примере системного набора данных «auto.dta»):

    ******

    clear

    //RTF UTILITY FOR INSERTING GRAPHICS & TABLES//

    local sf "/users/ppri/desktop/"

            //SETUP
             sysuse auto, clear
             twoway scatter mpg price,  mlabel(make) || lfitci mpg price
             graph export "`sf'myplot1.eps", replace
             twoway scatter price mpg,  mlabel(make) by(for)
             graph export "`sf'myplot2.eps", replace

             **
             tempname handle1

            //RTFUTIL
             rtfopen `handle1' using "`sf'mydoc1.rtf", replace
             file write `handle1' _n  _tab  "{\pard\b SAMPLE DOCUMENT \par}" _tab  _n 
             file write `handle1' _n "{\line}" 
             // Figure1
             file write `handle1' "{\pard\b FIGURE 1:  Plot of Price\par}" _n
             rtflink `handle1' using "`sf'myplot1.eps"
             // Figure2
             file write `handle1' _n "{\page}" _n /*
*/ "{\pard Here is the plot and a paragraph about it.  Here is the plot and a paragraph about it.  Here is the plot and a paragraph about it.  Here is the plot and a paragraph about it.....blah blah blah  blah blah   \line}" _n
             file write `handle1' _n "{\line}" 
             file write `handle1' "{\pard\b FIGURE2:  Plots of Price vs. MPG\par}" _n
             rtflink `handle1' using "`sf'myplot2.eps"
             //  Table Title
             file write `handle1' _n "{\page}" _n
             file write `handle1' _n "{\par\pard}" _n /*
*/   "{\par\pard  HERE IS A TABLE WITH THE CARS:  \par\pard}" _n
             file write `handle1' _n "{\par\pard}" _n


             // Summary Table
                      rtfrstyle make mpg weight, cwidths(2000 1440 1440) local(b d e)
                      listtex make foreign mpg if mpg<15, /*
                */   handle(`handle1') begin("`b'") delim("`d'") end("`e'") /*
                */  head("`b'\ql{\i Make}`d'\qr{\i Foreign}`d'\qr{\i MPG }`e'")
                      file write `handle1' _n "{\line}"  
                      file write `handle1' _n _tab(2)  /*
               */ "{\pard\b Sources:  Census Data, etc...  \par}" _n _n
                    **
             rtfclose `handle1'

    ******

Это поместит все элементы, о которых вы просили, в документ RTF (будьте осторожны с любыми проблемами с переносом этого кода при копировании/вставке его с веб-страницы).
В своем вопросе вы также упомянули о желании создать PDF-файл во время этого процесса.Здесь вам нужно будет использовать какое-то решение, отличное от Stata.Если вы используете Mac OSX, вы можете использовать для этого утилиту или автоматизатор Terminal -convert- или вот несколько других решений: http://codesnippets.joyent.com/posts/show/1601
Я не использую Windows, поэтому не уверен в решениях для этой ОС.Удачи.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top