Consider a data structure where "header" rows supply ID values (school and grade in the example below) that are not captured in subsequent rows .... df <- read.table(textConnection(" school grade studentid score 101 5 NA NA NA NA 123 21 NA NA 124 25 201 6 NA NA NA NA 231 33"), header=TRUE) closeAllConnections() How do I capture the missing values for school and grade? Art ************************* Art Burke Associate, Evaluation Program Education Northwest 101 SW Main St, Ste 500 Portland, OR 97204 Phone: 503.275.9592 Art.Burke@educationnorthwest.org <mailto:Art.Burke@educationnorthwest.org> http://educationnorthwest.org <http://educationnorthwest.org/> We have recently changed our name to "Education Northwest" from "Northwest Regional Educational Laboratory." Please note the new e-mail and Web addresses in the signature above. You may continue to find us on the Web at http://www.nwrel.org <http://www.nwrel.org/> for the immediate future as well. ************************ [[alternative HTML version deleted]]