2017-10-23 3 views
-5
name=c("John Porter","Anne Theresa","Terry pATRIC","Fred nORTON ","Maria lOPEZ") 
exam1=c(92, 75, 10, 62, 79) 
exam2=c(93,77,49,66,85) 

results=data.frame(name, exam1,exam2)  
results$avg=((results$exam1+results$exam2)/2)  
results$grade=cut(results$avg, breaks = c(0,49,69,79,84,100),labels =c("E","D", "C", "B", "A"))  
results 

new=strsplit(as.character(results),"") 
new  
lastname=sapply(new,"[",2)  
firstname=sapply(new,"[",1)  
results=cbind(firstname,lastname,results[,-1])  
results 

results=results[order(lastname,firstname),]  
results 
+5

https://stackoverflow.com/help/how-to-ask –

Antwort

-1

Wenn Sie die new Variable definieren, spalten, results$name zum Charakter umwandeln, nicht results. Verwenden Sie auch " " (ein Leerzeichen), um die Wörter zu teilen, nicht "" (kein Leerzeichen). Wenn Sie diese eine Zeile beheben, scheint der Code zu funktionieren.

ändern diese:

new=strsplit(as.character(results),"") 

dazu:

new=strsplit(as.character(results$name)," ") 
+0

Thank you so viel Alex – Maddy

Verwandte Themen