我有一组数据,其中包含课后课程学生信息的记录。 数据集包含29个变量,但是,对于此问题,我仅使用3个:

编辑:这已经完成,以下示例仅用于说明目的

student_id  year    group number
1   2009-10 1
2   2009-10 1
3   2009-10 2
4   2009-10 3
5   2009-10 3
1   2010-11 1
2   2010-11 2
3   2010-11 3
4   2010-11 2
5   2010-11 2
1   2011-12 2
3   2011-12 2
4   2011-12 1

我想通过该计划跟踪学生的进度,以查看该计划结束前是否辍学。 为此,我想计算一个简单的虚拟变量,该变量指示他们是否参加了该年,结果是这样的:

student_id  enroll.year1    enroll.year2    enroll.year3
1   1   1   1
2   1   1   0
3   1   1   0
4   1   1   1
5   1   1   0

最后,我想报告这些按年份和分组汇总的结果,如下所示:

编辑:这些数字是100%组成的,出于说明目的完全放在此处

Year    Group   retention rate
2009-10 1   0.77
2010-11 1   0.88
2011-12 1   0.8
2009-10 2   0.2
2010-11 2   0.5
2011-12 2   0.6
2009-10 3   0.5
2010-11 3   0.5
2011-12 3   0.5

保留率在此定义为“当年未返回的#who(值0)/组的总人数”

我是R的新手,但是我一直在尝试ddply来创建分组汇总和转换。 但是,我对如何进行第二步感到困惑。 我对ddply摘要语句的尝试是这样的:

tracking=ddply(data,"student_id", transform, enroll.year1=1, enroll.year2=student_id %in% year2 ifelse(TRUE,1,0)

但是,这在语法上是不正确的。 希望对实现此功能的细微差别有所帮助

  ask by Mike translate from so

本文未有回复,本站智能推荐:

3回复

r分组和计数

我正在处理如下数据集 我的目标是创建这样的数据集 表示 在1行的值,第2列(代表),是3,因为红色是基于ID和日期的独特组合来表示三次。 例如,1 次和第 2 点的行是相同的,ID(10)和日期(2008-11-17),以便该组合被表示一次(1(10,2008-11-17
1回复

分组相关矩阵

这是我的数据框 我想为组g1和g2(在这种情况下为Aa,Ab,Ca,Cb)的每种组合创建v1,v2和v3的相关矩阵。 所以我想使用Hmisc软件包并与plyr结合使用 这有效(尽管忽略组): 但这不是: 我究竟做错了什么?
2回复

DDPLY分组错误

我正在运行ddply函数,并不断收到错误消息。 data.frame的结构: 旁注:我知道如何为随机数值数据创建样本数据-如何应用5个级别的因子来构建代表性样本? ddply代码: 错误信息: 我认为ddply可能需要将要分组的变量作为一个因数,因此我在整数变
1回复

如何根据分组依据计算比例

我正在尝试计算目标特征的连续比例。 数据集 这是我尝试的: 我创建了count_per_ID,用于计算每个组ID的总行数。 然后,continuous_target特征对目标特征中的观察次数进行计数,并且每次发生更改时,它都会重新启动。 我所说的变化是在目标
2回复

分组和计数实例?

是否可以使用R(dplyr)对所有其他列的实例进行分组和计数? 例如,以下数据帧 转向此(注意:y是正在计算的值) 编辑: - 解释转换,x是我正在分组的,对于每个分组的数字,我想计算0和1和2被提及的次数,如在转换数据帧的第一行中,我们计算了多少在其他列(y)中,x = 1等于
2回复

分组连续范围

我有一个包含很多行的数据表,我想有条件地将两列分组,即Begin和End。 这些列代表相关人员正在做某事的某个月。 这是一些示例数据(如果不使用R,可以使用R读入,或者在下面找到纯表): 分组应按如下方式进行:如果A人从第4个月到第15个月进行了徒步旅行并从第16个月到第24个月旅行
2回复

如果我的分组变量是一个因素,我如何生成分组汇总统计信息?

假设我想获得关于数据集mtcars一些摘要统计信息(基本R版本2.12.1的一部分)。 下面,我根据他们拥有的发动机气缸数量对汽车进行分组,并采用mtcars剩余变量的mtcars 。 但是,如果我的分组变量恰好是一个因素,事情会变得棘手。 ddply()为每个级别的因子抛出一个警告
1回复

将分组的数据帧传递给dplyr中的自己的函数

我正试图从plyr转移到dplyr。 但是,我仍然无法弄清楚如何在链式dplyr函数中调用自己的函数。 我有一个带有分解ID变量和一个订单变量的数据框。 我想按ID拆分帧,按顺序变量排序,并在新列中添加序列。 我的plyr函数看起来像这样: 在dplyr我虽然看起来应该是
2回复

计算由两个变量分组的变量

我们都知道R中的函数table 。我在搜索使用table(x,y)时获得相同Output的table(x,y)但不针对x和y值的每个组合而是对另一个变量z进行计数。 在data.table中,可以通过dt[,sum(z),by=c("x","y")] 。 但这并不能提供等于table(x,y
2回复

如何在r中使用循环进行子集化和分组?

我的大部分问题都是如何提取和组织数据,没有事先的培训我为无法清楚地表达我想要的东西而道歉。 我希望我甚至知道如何在教科书或网上查找内容。 这是我现在的问题: 我有一个信息数据框,其中有一个名为ID的唯一组ID,有153个唯一ID,但我有来自这些组的> 6,000行信息​​。