Stata The Stata listserver
[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

st: RE: Silverman Test for modes

From   "Nick Cox" <[email protected]>
To   <[email protected]>
Subject   st: RE: Silverman Test for modes
Date   Sun, 28 Nov 2004 16:54:26 -0000

If I understand this correctly: 

You may have discovered bug(s) and/or limitation(s)
in -silvtest-. So the main options appear to be 

1. Inform the authors and hope that they will 
fix it or explain what you are doing wrong
from their point of view. Last time I looked the senior 
author was not a member of Statalist. 

2. Fix it yourself. 

3. Ignore -silvtest- and do this directly with 
-bootstrap- and -kdensity-. 

The last would seem by far the easiest. A program 
of the order of 10 lines long would appear to be 
needed to produce the mode count. 

I am not clear from your posting whether 50 
is also the number of observations in (one 
of) your real datasets. From my experience 
the number of modes identified by kernel 
density estimation can be very labile for
datasets that small. This may be _precisely_ 
why you are doing this. 

However, there is an extra generic problem 
that is very simple but also seems crucial. 
If you are counting modes as local peaks 
on the density, then minor modes that 
would not be taken seriously in practice
are necessarily included in the count. 

I've found in similar problems a simple 
approach much more illuminating than this
one. Loop over a range of kernel widths, 
and track the modes as they disappear 
and/or appear. Genuine modes can be 
expected to persist, and freak modes
to fade away. 

[email protected] 

[email protected] (converted from original HTML) 

I am attempting to implement the silverman test using the procedures 
outlined by this earlier posting and from the STATA Journal:

"STB-38  snp13  . Nonparametric assessment of multimodality for univariate data
        (help warpdenm if installed) . . . . Salgado-Ugarte, Shimizu, Taniuchi
        7/97    pp.27--35; STB Reprints Vol 7, pp.232--243
        implementation of smoothed bootstrap procedure of Silverman for
        multimodality assessment

With the ado-files included you can bootstrap kde's and later to count the 
number of modes one by one interectivelly or automatically with the silvtest.ado 
program and sending the result listing to a log file (to keep track of any 
single result)."

I have successfully installed the files and can get the procedure to run.  
I am having some problems with the results.   To check the process, I 
generated a sample of 50 observations:  the first 25 observations are 
equal to the value 10; observations 26-50 are equal to the value of 100, 
so the sample has exactly 2 modes.  However, there are two interesting 
problems arising from testing for the number of modes: 

1.  The number of bootstrap samples that can be generated are limited to 
the number of elements in the original sample (in this case 50).  

2.  Each bootstrap sample returns only 1 mode, so that the result is 
fail to reject the null of 1 mode (even though there is clearly two modes in my example).  

I have exhausted numerous possibilities of changing the different parameters 
for this test, different examples and data sets and always get 1 mode.  
Any help would be greatly appreciated.

*   For searches and help try:

© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index