R/create-subject-tag.R
CreateSubjectTag.Rd
A SubjectTag
uniquely identify subjects. For Gen2 subjects, the SubjectTag is identical to their CID (ie, C00001.00 -the SubjectID assigned in the NLSY79-Children files). However for Gen1 subjects, the SubjectTag is their CaseID (ie, R00001.00), with "00" appended. This manipulation is necessary to identify subjects uniquely in inter-generational datasets. A Gen1 subject with an ID of 43 becomes 4300. The SubjectTags of her four children remain 4301, 4302, 4303, and 4304.
CreateSubjectTag(subjectID, generation)
subjectID | The ID assigned by the NLSY. For Gen1 subjects, this will be their CaseID (ie, R00001.00). For Gen2 subjects, this will be their CID (ie, C00001.00). |
---|---|
generation | The generation of the subject. Values are either 1 or 2, representing Gen1 and Gen2. |
A integer value under normal circumstances. An error is thrown if the vectors subjectID
and generation
are different lengths. If either input vector has NA values, the respective output element(s) will be NA too.
For a fuller explanation of SubjectTag
in context, see the Links79Pair dataset documentation.
Will Beasley
library(NlsyLinks) #Load the package into the current R session. #Typically these two vectors will come from a data frame. subjectIDs <- c(71:82, 10001:10012) generation <- c(rep(1, 12), rep(2, 12)) CreateSubjectTag(subjectIDs, generation)#> [1] 7100 7200 7300 7400 7500 7600 7700 7800 7900 8000 8100 8200 #> [13] 10001 10002 10003 10004 10005 10006 10007 10008 10009 10010 10011 10012#Returns 7100, ..., 8200, 10001, ..., 10012 # Use the ExtraOutcomes79 dataset, with numeric variables 'SubjectID' and 'Generation'. ExtraOutcomes79$SubjectTag <- CreateSubjectTag( subjectID=ExtraOutcomes79$SubjectID, generation=ExtraOutcomes79$Generation )