抱歉,我是R新手!
我有一个数据框,其中包含学生人数,所修课程和成绩。问题是所有课程都显示在同一列中,导致学生编号重复很多。我希望每个课程都是自己的列,然后将学生的成绩分配给该列,以便表中每个学生只有一个学生编号。
我尝试使用spread()函数,但收到错误消息:“行的重复标识符”
现在,数据集如下所示:
StudentNum<- c(1,1,2,2,3,3)
Course <- c('math', 'science', 'geo', 'math', 'physics', 'biology')
grade <- c(75, 80, 90, 60, 50, 35)
Data <- data.frame(StudentNum, Course, grade)
但是我希望它看起来像这样:
StudentNum<- c(1,2,3)
math<- c(90, 39, NA)
science <- c(67, 33, 78)
biology <- c(55, 67, NA)
physics <- c(66, 99, 100)
DesiredData<-data.frame(StudentNum, math, science, biology, physics)
数字可能不匹配,因为我只是组成了这两个例子,但我希望它能说明我正在尝试做的事情。我想我缺少明显的东西,但是任何帮助将不胜感激!