data=data.frame("name"=c("Jimmy","Ellie","Lashay","Kristyn","Gloria","Carmen","Monica","Nicky","Kirby","Corrie","Dwayne","Janee","Nova","Bruce","Denita","Vickie","Ramon","Jacquline","Myrtice","Nadene","Jimmy","Ellie","Lashay","Kristyn","Gloria","Carmen","Monica","Nicky","Kirby","Corrie","Dwayne","Janee","Nova","Bruce","Denita","Vickie","Ramon","Jacquline","Myrtice","Nadene","Jimmy","Ellie","Lashay","Kristyn","Gloria","Carmen","Monica","Nicky","Kirby","Corrie","Dwayne","Janee","Nova","Bruce","Denita","Vickie","Ramon","Jacquline","Myrtice","Nadene"),
"score"=c("71","83","58","72","80","89","74","76","46","81","60","84","80","95","44","61","93","93","59","52","99","97","96","76","56","89","46","71","64","47","57","62","51","98","54","94","44","90","41","52","62","93","48","44","89","52","87","69","54","65","74","81","78","67","63","93","80","100","54","94"),
"class"=c("literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","literature","science","science","science","science","science","science","science","science","science","science","science","science","science","science","science","science","science","science","science","science","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities","humanities"))
Each student has 1 score for each subject so each student is represented 3 times over.
Firstly, I want to sort the names by score (high to low) for the science category.
data=data[order(data$score,data$name,data$class=="science"),] #this is my attempt
Second, I want to store the order of the names for the science category.
#I am unsure how to do this
Thirdly, I wish to replicate the stored order of names from Step 2
#I am unsure how to do this
Fourth, I wish to match the ordered names with the scores for each subject.
#I am unsure how to do this
Here is a more basic example: Have:
Name Score Subject
John 5 literature
Jack 4 literature
Jill 2 literature
John 7 science
Jack 9 science
Jill 10 science
Want:
name jill jack john
science 10 9 7
literature 2 4 5