|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: st: Passing varlist to a Program
Aaron,
I should have added that a working knowledge of Stata macros is
absolutely essential for programming -- you can start with -help macro-
and then look in the User's Guide and the Programming Reference manual.
And then there is the $125 NetCourse 151: Introduction to Stata
Programming (http://stata.com/netcourse/nc151.html).
-ml
Michael I. Lichter wrote:
Aaron,
Yes, it can be disturbing for somebody used to standard structured
programming languages to start doing work in Stata or any of the
mainstream statistics packages. It's not as disturbing as APL or
BASIC, though (for different reasons).
Anyway, if you have the manuals handy, there is a section in the
User's Manual about getting started in programming, and the
Programming Reference Manual is a helpful supplement. There are
accessible articles in the Stata Journal archives on programming, like
Nick Cox's classic on programming style
(http://www.statajournal.com/article.html?article=pr0018), there is a
new book by Chris Baum (http://www.stata-press.com/books/isp.html),
and there are the archives of this list (searchable through the Stata
web site, for one) and this list itself.
As for your programming query, here's one way to do it using the
-syntax- command.
version 10.1
cap program drop someprog
program define someprog
syntax varlist
describe `varlist', simple
end
cap program drop myprog
program define myprog
version 10.1
syntax varlist
someprog `varlist'
end
sysuse auto, clear
myprog price-turn
Aaron Thomas wrote:
I'm having two problems, and hoping someone can help me with this.
I have a program that takes a varlist in stata 10. (So I type
something like:
someprog var1-var99
Then it does something with the data.)
I have another program that takes a varlist, and I want to pass that
varlist to the first program so I can then work with the data it
gives back.
(so, something like
myprog var1-var99
Now, myprog needs to pass that varlist to someprog )
I can't seem to do this in Stata. I can pass var1-var99 to one
program, but writing a program in a way that it can take any varlist
and pass it to the next one is invisible to me, I've been crawling
the web for four hours now looking for a way to do this. Someone
please help me, or tell me where to get the right help. Which is my
second problem. Where do I get some information about programming in
Stata that makes sense? I program in C/C++, python, lisp, basic, c#,
pascal, java, and several scripting languages, and the flat linear
interpreted style of Stata is unfamiliar ground for me, I can't find
anything readable on it. Thanks.
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/
--
Michael I. Lichter, Ph.D. <[email protected]>
Research Assistant Professor & NRSA Fellow
UB Department of Family Medicine / Primary Care Research Institute
UB Clinical Center, 462 Grider Street, Buffalo, NY 14215
Office: CC 125 / Phone: 716-898-4751 / FAX: 716-898-3536
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/