Dear All,
I have a data set with interviewers' filedwork record which record when they called respondents and whether any contact has been made. In most of cases interviewers had to call a respondent several times before making the first contact. Now I want to derive a variable to identify the first contact. Do you know how I can do it? Many thanks for your help in advance. Respondent ID Nocall Call_status 0001 1 1 (No Reply) 0001 2 1 (No reply) 0001 3 2 (Made contact First contact) 0002 1 1 (No reply) 0002 2 1 (No reply) 0002 3 1 (No reply) 0002 4 3 (Made contact and conducted interview---First contact) 0003 1 2 (Made contact---First contact)) Nai Li |
Ypou might try something like this:
data list list/int_id (f4.0) nocall callstat (2f1.0). begin data 0001 1 1 0001 2 1 0001 3 2 0002 1 1 0002 2 1 0002 3 1 0002 4 3 0003 1 2 end data. sort cases by int_id. casestovars/id = int_id. compute fst_cont=max(callstat.1,callstat.2,callstat.3,callstat.4). do repeat call_sta=callstat.1,callstat.2,callstat.3,callstat.4/ ix=1 to 4. if (call_sta eq fst_cont) wherefstc=ix. end repeat. print formats wherefstc (f1.0). write formats wherefstc (f1.0). sort cases by int_id. varstocases/make nocall from nocall.1 nocall.2 nocall.3 nocall.4/ make callstat from callstat.1 callstat.2 callstat.3 callstat.4/ drop = fst_cont. HTH, Judith Saebel |
In reply to this post by Nai Li
Hi Nai Li,
Perhaps: compute contact = 0. if (call_status ne 1) contact = 1. This assumes that it's not possible to have a call_status two and three within one id. Cheers!! Albert-Jan --- Nai Li <[hidden email]> wrote: > Dear All, > I have a data set with interviewers' filedwork > record which record when > they called respondents and whether any contact has > been made. In most > of cases interviewers had to call a respondent > several times before making > the first contact. Now I want to derive a variable > to identify the first > contact. Do you know how I can do it? Many thanks > for your help in advance. > > Respondent ID Nocall Call_status > 0001 1 1 (No > Reply) > 0001 2 1 (No > reply) > 0001 3 2 (Made > contact First contact) > 0002 1 1 (No > reply) > 0002 2 1 (No > reply) > 0002 3 1 (No > reply) > 0002 4 3 (Made > contact and conducted > interview---First contact) > 0003 1 2 (Made > contact---First contact)) > > > > Nai Li > Cheers! Albert-Jan ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Did you know that 87.166253% of all statistics claim a precision of results that is not justified by the method employed? [HELMUT RICHTER] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com |
In reply to this post by Nai Li
At 05:57 AM 4/23/2007, Nai Li wrote:
>I have a data set with interviewers' filedwork record which record >when they called respondents and whether any contact has been made. >Now I want to derive a variable to identify the first contact. SPSS 15 draft output (WRR-not saved separately). Sorry to be brief; I'm doing this in a bit of a hurry. |-----------------------------|---------------------------| |Output Created |23-APR-2007 15:10:54 | |-----------------------------|---------------------------| Respondent Nocall Status Status_Text 0001 1 1 (No Reply) 0001 2 1 (No reply) 0001 3 2 (Made contact First contact) 0002 1 1 (No reply) 0002 2 1 (No reply) 0002 3 1 (No reply) 0002 4 3 (Contact and interview---1st contact) 0003 1 2 (Made contact---First contact)) Number of cases read: 8 Number of cases listed: 8 Numeric First (F2). Numeric #NotYet (F2). DO IF MISSING(LAG(Respondent)). . COMPUTE #NotYet = 1. ELSE IF Respondent NE LAG(Respondent). . COMPUTE #NotYet = 1. END IF. DO IF ANY(Status,2,3). . IF #NotYet First = 1. . COMPUTE #NotYet = 0. END IF. RECODE First (MISSING=0). LIST. List |-----------------------------|---------------------------| |Output Created |23-APR-2007 15:10:54 | |-----------------------------|---------------------------| Respondent Nocall Status Status_Text First 0001 1 1 (No Reply) 0 0001 2 1 (No reply) 0 0001 3 2 (Made contact First contact) 1 0002 1 1 (No reply) 0 0002 2 1 (No reply) 0 0002 3 1 (No reply) 0 0002 4 3 (Contact and interview---1st contact) 1 0003 1 2 (Made contact---First contact)) 1 Number of cases read: 8 Number of cases listed: 8 TEMPORARY. SELECT IF FIRST. LIST. List |-----------------------------|---------------------------| |Output Created |23-APR-2007 15:10:55 | |-----------------------------|---------------------------| Respondent Nocall Status Status_Text First 0001 3 2 (Made contact First contact) 1 0002 4 3 (Contact and interview---1st contact) 1 0003 1 2 (Made contact---First contact)) 1 Number of cases read: 3 Number of cases listed: 3 =========================================== APPENDIX: Test data (from original posting) =========================================== DATA LIST FIXED SKIP=2 /Respondent 01-04 Nocall 12-14 Status 17-19 Status_Text 21-57 (A). BEGIN DATA Respondent Nocall Call_status ----|---10----|---20----|---30----|---40----|---50----|---60 0001 1 1 (No Reply) 0001 2 1 (No reply) 0001 3 2 (Made contact First contact) 0002 1 1 (No reply) 0002 2 1 (No reply) 0002 3 1 (No reply) 0002 4 3 (Contact and interview---1st contact) 0003 1 2 (Made contact---First contact)) END DATA. FORMATS Respondent (N4) Nocall (F3) Status (F3). SORT CASES BY Respondent Nocall. LIST. |
Free forum by Nabble | Edit this page |