I have a dataset at contract level and a person can have multiple contract per year. I want to select the contract that is identified as the main job and remove all other contracts.
I used the following criteria as the main job - proportion of employment (procc_main), salary and terms of employment (term). I main job is the job that has the highest proportion of employment, if equal, highest salary , and finally if both are equal the terms of employment (1- full time, 2 part time).
I used the code below: i sorted them first using the criteria so that the main contract will be the first observation for each individual for that year.
Then i generated a duplication key and removed any duplicates.
gsort staff_id year -propcc_main -salary f_terms
quietly by staff_id year: gen dup=cond(_N==1,0,_n)
count if dup>1 //177,633 duplication in other words individuals with multiple contracts
drop if dup>1
THE PROBLEM: When i re-run this it give me difference samples. When i say different sample, i mean it selects different contracts as the main job- overall the sample size remains the same. It would be great if someone could help me with this. I going over and over it and having no luck.
Thanks alot.
Danula
Related Posts with removing duplicates
Calculating Age Using DatesIn Stata, I need to calculate the age of a patient at the last check-up by using the date of birth a…
Missing value upon matrix multiplicationDear Statalist, I am trying to implement a routine based on the following recent article in the Sta…
Question on merging datasets with duplicatesHello all, I have a question regarding merging files with duplicates. I suspect the solution is quit…
Interpreting multiplicative interaction in StataDear all, I am interested in evaluating if there is multiplicative interaction between one categori…
Assessing model using svy dataDear Statalist community, I am using a nationwide dataset with survey sampling to determine a speci…
Subscribe to:
Post Comments (Atom)
0 Response to removing duplicates
Post a Comment