Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: predict, condpb


From   Richard Williams <[email protected]>
To   [email protected], "[email protected]" <[email protected]>
Subject   Re: st: predict, condpb
Date   Tue, 06 Aug 2013 11:09:39 -0400

Yes, Just to elaborate a bit, after you run an estimation command, if you then run -ereturn list- you will often see something like

e(predict) : "nlogitrum_p"

That is the name of the program to use for any following predict commands. So really, there are many predict programs, not just one. If you type -help predict- it says "Exactly what predict can do is determined by the previous estimation command; command-specific options are documented with each estimation command."

Note too that, since predict is a post-estimation command, version control often needs to be done with the estimation command. Otherwise the estimation command may return results in a newer format than the predict command recognizes. There are a lot of user-written post-estimation commands on SSC that will not run correctly unless the estimation command is run using version control.


At 09:37 AM 8/6/2013, Nick Cox wrote:
-predict- is the same, regardless. It's what -predict- runs that leads
to different results. You don't see the transaction in which -predict-
tells something else to do the work.

To be fair, the documentation that everyone can see doesn't really
emphasise this -- the impression can easily be obtained that -predict-
is somehow omniscient and omnipotent, at least as far as predictions
are concerned -- and I had temporarily forgotten this.

To be fair also, there is usually no reason for users to know or to
worry about precisely what is happening, although not knowing did bite
you here. If users become programmers, they do need to know.

A way to understand it all is as follows. How can -predict- possibly
understand what predictions are possible after user-written commands
which may even have been written after -predict- itself was written?
Simply, it can't. It just looks at what the previous estimation
command has left behind as the name of a prediction program and then
runs that. Or, if there is no such name, it can run nothing. -predict-
isn't omniscient at all: it knows only one real thing, where to look.

Nick
[email protected]


On 6 August 2013 15:20, Stefan Bernhard <[email protected]> wrote:
> Thanks Nick and Richard (your example works fine), I did not know that
> predict was specific to the previous estimation command. There's
> something new to learn about stata every day...
> Therefore the question is resolved.
>
> Well then the problem clearly is that in the do-file that I was given,
> there is no nlogitrum at all, which is strange because why would there
> be that specific predict for nlogitrum then...
>
> best, stefan bernhard,
>
> 2013/8/6 Richard Williams <[email protected]>:
>> Works for me. travelmode is an auxiliary file that you can download along
>> with the program:
>>
>> use "C:\StataData\travelmode.dta", clear
>> nlogitrum mode asc_* hinc_* time_*, group(grp) nests(travel type)
>>
>> predict x1, condpb
>> predict x2, pb
>>
>> Like Nick says we need to see the code. In particular, you have to run
>> nlogitrum first before you run the predict commands. predict options are
>> often specific to the estimation command that has just been run; they aren't
>> going to work after every estimation command.
>>
>>
>> At 08:37 AM 8/6/2013, Nick Cox wrote:
>>>
>>> I think you might need to tell us much more about your do-file and
>>> what it runs immediately before it invokes -predict-.
>>>
>>> Earlier I was following your guess that something is no longer allowed
>>> in newer versions of Stata (Stata 12 in your case) but on further
>>> thought that's unlikely to be the problem.
>>>
>>> The key point here is that -predict- in itself does nothing much
>>> except call up whatever prediction program is associated with the last
>>> estimation command.
>>>
>>> It sounds as if you might need something user-written to be installed,
>>> specifically                  -nlogitrum_p-, although the error
>>> message remains a puzzle to me.
>>> Nick
>>> [email protected]
>>>
>>>
>>> On 6 August 2013 14:16, Stefan Bernhard <[email protected]>
>>> wrote:
>>> > Yeah I did that because I thought maybe it does some alterations to
>>> > -predict-, but that is not the case, still not allowed option :/
>>> > best stefan bernhard,
>>> >
>>> > 2013/8/6 Kieran McCaul <[email protected]>:
>>> >> ...
>>> >>
>>> >>
>>> >> Looks like you have to download -nlogitrum-
>>> >>
>>> >> Type: search nlogitrum
>>> >> And click on the link.
>>> >>
>>> >> -----Original Message-----
>>> >> From: [email protected]
>>> >> [mailto:[email protected]] On Behalf Of Stefan Bernhard
>>> >> Sent: Tuesday, 6 August 2013 8:00 PM
>>> >> To: statalist
>>> >> Subject: Re: st: predict, condpb
>>> >>
>>> >> Thanks for the reply nick,
>>> >>
>>> >> but I tried all version #: from 1 to 11 now and always the error
>>> >> "option condpb not allowed".
>>> >>
>>> >> I found a stata-journal article from 2002 where the syntax of predict
>>> >> looks like this:
>>> >>
>>> >> predict  type newvarname  if exp  in range  , statistic
>>> >>
>>> >> Where the condpb and pb were set with statistic.
>>> >>
>>> >> http://www.stata-journal.com/sjpdf.html?articlenum=st0017
>>> >>
>>> >> It seems like that was for Stata 7 and the predict command has
>>> >> undergone significant changes sometime in between. Or could it have to do >>> >> anything with having to run nlogitrum first? (In the do-file, the predict is
>>> >> after an nlogit)
>>> >>
>>> >> best, stefan bernhard,
>>> >>
>>> >> 2013/8/6 Nick Cox <[email protected]>:
>>> >>> Try a prefix such as
>>> >>>
>>> >>> version 5: predict x1, condpb
>>> >>>
>>> >>> for any value of "5" that works.
>>> >>>
>>> >>> See also the -help- for -version-.
>>> >>>
>>> >>> Nick
>>> >>> [email protected]
>>> >>>
>>> >>>
>>> >>> On 6 August 2013 12:08, Stefan Bernhard <[email protected]>
>>> >>> wrote:
>>> >>>> dear statalisters,
>>> >>>>
>>> >>>> i have a do file that was written some time ago that contains
>>> >>>>
>>> >>>> predict x1, condpb
>>> >>>> predict x2, pb
>>> >>>>
>>> >>>> apparently, the options condpb and pb are no longer allowed in newer
>>> >>>> versions of stata (I use stata 12).
>>> >>>>
>>> >>>> Is there any way to do whatever those options did before (I just want
>>> >>>> to replace these commands with something that gives me the same
>>> >>>> output as those would have in an older version of stata)?
>>> >>>>
>>> >>>> best, stefan bernhard,
>>> >>>> *

-------------------------------------------
Richard Williams, Notre Dame Dept of Sociology
OFFICE: (574)631-6668, (574)631-6463
HOME:   (574)289-5227
EMAIL:  [email protected]
WWW:    http://www.nd.edu/~rwilliam

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/faqs/resources/statalist-faq/
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index