【发布时间】:2020-08-24 15:58:13
【问题描述】:
我有一个大数据框 df1 有一个列 Student 有学生姓名的字符串值,Grades 有考试成绩的数值。另一个数据框 df2 包含三列 Class 数字,From To 作为成绩范围,Count 总结了在特定班级的某个值之间有多少学生的特定成绩。
举个例子:
Stundent <- c("Mark", "Jhon", "Stuart", "Lillie", "Carl", "Jason", "Stewart","Jack")
Grades <- c(7,9,1,6,7,6,4,8)
df1 <- data.frame(Stundent,Grades)
Class <- c(101, 101, 201, 308, 507, 201, 507, 308)
from <- c(1,6,1,1,6,6,1,6)
to <- c(5,10,5,5,10,10,5,10)
Count <- c(0,2,1,0,1,1,1,2)
df2 <- data.frame(Class,from,to,Count)
df2 <- df2[order(df2$Class),]
我期望得到这样的东西
Students <- c("","Mark, Jhon", "Stuart", "Lillie", "","Carl, Jason", "Stewart", "Jack")
df3 <- data.frame(df2, Students)
【问题讨论】:
-
你能解释一下
df1的学生在哪个班级吗?df1中的名称列表是否与df2完全匹配,因此df1中的前两个名称必须在类 101 中(df2的前 2 行)? -
如何匹配
df1和df2?df1中不应该有另一列名为Class吗?
标签: r arrays string dataframe grouping