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: Flaggin Changes in Data
From
Nick Cox <[email protected]>
To
"[email protected]" <[email protected]>
Subject
Re: st: Flaggin Changes in Data
Date
Tue, 2 Jul 2013 10:14:20 +0100
I would use a composite string to hold information on rooms booked on
a given day to a given person.
bysort id date : gen rooms = string(room[1])
by id date : replace rooms = rooms[_n-1] + " " + string(room) if _n > 1
by id date: replace rooms = rooms[_N]
Then your flag is
by id : gen flag = rooms != rooms[_n-1] & date != date[_n-1] & date != date[1]
That may not catch all you want, but it might help.
Nick
[email protected]
On 2 July 2013 08:31, Beatrice Benavidez <[email protected]> wrote:
> Hi everyone,
>
> I have hotel occupancy data of individuals who change rooms in the
> hotel in the following format:
>
> Booking ID Date Room
> 17 1/1/2013 3
> 17 1/1/2013 4
> 17 2/1/2013 5
> 17 2/1/2013 6
> 27 1/1/2013 10
> 27 1/1/2013 11
> 27 2/1/2013 12
> 37 1/1/2013 10
> 37 2/1/2013 11
> 37 2/1/2013 12
>
> I would like to flag the bookingid rooms that changed with
> 'Flag_rmchange' variable:
>
> Booking ID Date Room Flag_rmchange
> 17 1/1/2013 3
> 17 1/1/2013 4
> 17 2/1/2013 5 1
> 17 2/1/2013 6 1
> 27 1/1/2013 10
> 27 1/1/2013 11
> 27 2/1/2013 12 1
> 37 1/1/2013 10
> 37 2/1/2013 11 1
> 37 2/1/2013 12
>
> What happened here is that I flagged bookingid rooms that were changed
> from the day before. I make the flags always on the day after, see
> here the flags are on 2/1. Problem is I don't know which room they
> changed from the day before to the next but it shouldn't matter as I
> just need to flag that did change rooms.
>
> I would like to find a way to automatically flag the bookingid rooms
> that were changed like the above, where the room they change from is
> different to the room they change to, the next day.
>
> With booking Id 17, there were two different rooms on 1/1 and two
> different rooms on 2/1 so the should be two flags on 2/1. But with
> booking id 27, person stayed in two rooms on 1/1 but one room on 2/1
> so the flag is on 2/1 for room 12. However, with booking id 37, person
> stayed in 1 room on 1/1 but two rooms on 2/1 so the flag should be
> assigned to one room 2/1 as person only changed room once. I assigned
> it to room 11. However, it doesn't matter if i had assigned it to
> either room 11 or room 12 as long as there is one flag.
>
> So maybe, a script can be developed where there is the same number of
> rooms from one day to the next with completely different room numbers,
> which means they were room changes so should be flagged.
>
> Any suggestions would be very helpful!
>
> Kind regards,
>
>
> Beatrice
> *
> * 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/