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: Looping over a range of observations
From
Nick Cox <[email protected]>
To
"[email protected]" <[email protected]>
Subject
Re: st: Looping over a range of observations
Date
Fri, 23 Aug 2013 18:30:46 +0100
If identifiers are untidy then
egen store2 = group(store), label
will tidy them up. The result of -store2- is guaranteed to run 1, 2, 3, ....
Nick
[email protected]
On 23 August 2013 18:18, Francesca Colantuoni <[email protected]> wrote:
> Thank you!
> I don't have exactly 900 stores and I have to modify your code a
> little bit, but I was very far and this is extremely helpful. I also
> think that 12 would be more convenient.
> I'll keep you posted, thanks again Nick.
>
> Francesca
>
> On Fri, Aug 23, 2013 at 12:57 PM, Nick Cox <[email protected]> wrote:
>> Assuming your stores have identifiers 1..900 then
>>
>> forvalues i=1/90 {
>> local first = 10 * `i' - 9
>> local last = `first' + 9
>> histogram price1 if inrange(store, `first', `Iast'), by(store)
>> graph save "graph`i'", replace
>> }
>>
>> My guess is that you would find 12 or 16 graphs convenient, but the
>> arithmetic is easy to modify.
>>
>> Nick
>> [email protected]
>>
>>
>> On 23 August 2013 17:48, Francesca Colantuoni <[email protected]> wrote:
>>> Hello Statalist!
>>> I am working with a panel data set. I would like to create and save
>>> graphs that show
>>> histograms of a variable (price1) per each store in the data set. I
>>> have many stores (900), therefore if I do:
>>>
>>> histogram price1, by (store)
>>>
>>> each histogram would be microscopic and I would not be able to see anything.
>>>
>>> So, I tried with:
>>>
>>> histogram price1 in 1/2120, by (store)
>>>
>>> which allows me to visualize histograms for the first 10 stores only,
>>> and this works way better.
>>>
>>> Now, though, I would like to create a loop that increments the range
>>> of observations and creates a number of graphs containing 10
>>> histograms each.
>>>
>>> I was trying with something like:
>>>
>>> forvalues i=1/2120 {
>>> histogram price1 in `i', by(store)
>>> graph save graph "graph1.gph", replace
>>> }
>>>
>>> Of course I need to nest the loop to update the graphs and I still
>>> need to increment the range of observations, but for the moment, I
>>> would like to get some help to figure out the first part, because
>>> even if the code runs no problem, the graph I get is not what I want
>>> (it's only one histogram with one bar).
>>>
>>> Kindest Regards,
>>>
>>> Francesca
>>> *
>>> * 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/
>> *
>> * 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/
> *
> * 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/
*
* 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/