studentGrowthPercentiles(panel.data,
sgp.labels,
panel.data.vnames,
grade.progression,
num.prior,
subset.grade,
percentile.cuts,
use.my.knots.boundaries,
use.my.coefficient.matrices,
print.other.gp,
calculate.sgps=TRUE,
rq.method="br",
knot.cut.percentiles=c(0.2,0.4,0.6,0.8),
convert.0and100=TRUE,
sgp.quantiles="Percentiles",
percuts.digits=0,
isotonize=TRUE,
convert.using.loss.hoss=TRUE,
goodness.of.fit=TRUE)
panel.data$Panel_Data
. Data must be formatted so that student ID is the fsgp.labels
, of the form list(my.year= ,
my.subject= )
. The user-specified values are used to save the student growth percentiles, coefficient matrices, knots/boundaries, and goodness of fit result3:4
would indicate to subset the
data where the two most recent years of data available are 3 and 4, respectively. Also allows for non-sequential gradenum.panels-1
.
If num.prior=1
, then only 1st order growth percentiles are computed, if num.prior=2
, then 1st and 2nd order are computed,
if <subset.grade=5
selects out those students in grade five in the most recent year of the data. If no sub-setting is desired,
argument dlist(my.year= , my.subject= )
specifying a set of pre-calculated
knots and boundaries for B-spline calculations. Most often used to utilize knots and boundaries calculated from a previous analysis. Knots and boundaries list(my.year= , my.subject= )
specifying a set of pre-calculated
coefficient matrices to use for student grwoth percentile calculations. Can be used to calculate baseline referenced student growth percentiles or to calc"br"
method referring to the Barrodale and Roberts l1 estimation detailed in Koenker (2005) and in the help for the quantile regresspanel.data$Goodness_of_Fit
$my.year.my.s
grade.progression
. Additional uses include using precalculated results to recalculate SGPs for baseline referencing.
The examples provide code for use in analyzing assessment data across multiple grades.Betebenner, D. W. (2008). Toward a normative understanding of student growth. In K. E. Ryan & L. A. Shepard (Eds.), The Future of Test Based Accountability (pp. 155-170). New York: Routledge.
Dette, H. & Volgushev, S. (2008). Non-crossing non-parametric estimates of quantile curves. Journal of the Royal Statistical Society B, 70(3), 609-627.
Koenker, R. (2005). Quantile regression. Cambridge: Cambridge University Press.
studentGrowthProjections
, sgpData
### Calculate 4th grade student growth percentiles
my.sgpData <- studentGrowthPercentiles(panel.data=sgpData,
sgp.labels=list(my.year=2010, my.subject="Reading"),
percentile.cuts=c(1,35,65,99),
grade.progression=3:4)
## Loop to calculate all SGPs for all grades without percentile cuts
my.grade.sequences <- list(3:4, 3:5, 3:6, 3:7, 4:8)
for (i in seq_along(my.grade.sequences)) {
my.sgpData <- studentGrowthPercentiles(panel.data=sgpData,
sgp.labels=list(my.year=2010, my.subject="Reading"),
grade.progression=my.grade.sequences[[i]])
}
# Save Student Growth Percentiles results to a .csv file:
write.csv(my.sgpData$SGPercentiles$READING.2010,
file= "2010_Reading_SGPercentiles.csv", row.names=FALSE, quote=FALSE)
## Loop to calculate all SGPs for all grades using 2006 to 2009 data
## (embedding results in my.sgpData from previous example)
my.grade.sequences <- list(3:4, 3:5, 3:6, 4:7, 5:8)
for (i in seq_along(my.grade.sequences)) {
my.sgpData <- studentGrowthPercentiles(panel.data=my.sgpData,
panel.data.vnames=c("ID", "GRADE_2006",
"GRADE_2007", "GRADE_2008", "GRADE_2009",
"SS_2006", "SS_2007", "SS_2008", "SS_2009"),
sgp.labels=list(my.year=2009, my.subject="Reading"),
grade.progression=my.grade.sequences[[i]])
}
# Save Student Growth Percentiles results to a .csv file:
write.csv(my.sgpData$SGPercentiles$READING.2009,
file= "2010_Reading_SGPercentiles.csv", row.names=FALSE, quote=FALSE)
Run the code above in your browser using DataLab