Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, statalist.org is already up and running.


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

Re: st: cluster analysis with foreach


From   Stas Kolenikov <skolenik@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: cluster analysis with foreach
Date   Wed, 9 Jun 2010 12:16:11 -0500

I don't think there is an elegant way to do that (and, as Nick said,
this may or may not be meaningful enough). Each cluster analysis will
create its own variable. If you are going to have say less than 100
clusters in each of the analyses, and your states are numeric rather
than string ids, you can modify mine or Nick's syntax to:

levelsof state, local(allstates)
gen int allclus = 0
foreach s of local allstates {
       cluster kmeans if state == `s', gen( state`s' )
       replace allclus = `s'*100 + state`s' if state == `s'
}

On Wed, Jun 9, 2010 at 12:07 PM, Maximiliano Manuel Silva Correa
<maxsilvacorrea@gmail.com> wrote:
> Than you guys. How could I join the sucessive cluster analysis in one
> cluster variable??
>
> 2010/6/9 Nick Cox <n.j.cox@durham.ac.uk>:
>> If you want to do it that way, fine but
>>
>> levelsof state, local(allstates)
>> foreach s of local allstates {
>>        ...
>> }
>>
>> is one statement fewer.
>>
>> Nick
>> n.j.cox@durham.ac.uk
>>
>> Stas Kolenikov
>>
>> You seem to be thinking in R terms here :)). In Stata, this would be
>> something like
>>
>> levelsof state
>> local allstates `r(levels)'
>> foreach s in `allstates' {
>>  cluster kmeans <list of power variables> if state == "`s'", k(#)
>> }
>>
>> Of course you would also need to think how you will utilize the results.
>>
>> On Wed, Jun 9, 2010 at 11:36 AM, Maximiliano Manuel Silva Correa
>> <maxsilvacorrea@gmail.com> wrote:
>>
>>> Im stuck trying to run a cluster analysis routine throuth diferent
>>> sections of my data. Suppose we have power consumtion data about
>>> different cities of the US. What I'd like to do is to run a cluster
>>> analysis routine (cluster kmeans for example) by state, because i
>>> would like to see in every state which cities have similar power
>>> consumtion.
>>>
>>> It would be something like
>>>
>>> foreach s in states{
>>>
>>> cluster(kmeans, power_city)
>>>
>>> }
>>>
>>> (states is a string variable)
>>>
>>> Could someone show me the sintax here, or send similar examples?
>>
>> *
>> *   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/
>>
>
> *
> *   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/
>



-- 
Stas Kolenikov, also found at http://stas.kolenikov.name
Small print: I use this email account for mailing lists only.

*
*   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/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index