Wiki Markup | |
---|---|
Panel | |
|
Add the count of teachers to the count of students.
Code Block |
---|
[Distinct Count: Teacher ID] + [Distinct Count: Student ID]
{code}
h4. |
...
...
...
...
...
...
...
...
...
...
Take
...
the
...
average
...
test
...
score
...
and
...
apply
...
the
...
round(x,
...
p)
...
function,
...
setting
...
the
...
precision
...
p
...
equal
...
to
...
2.
...
Code Block |
---|
round([Average: Test Score], 2)
{code}
h4. |
...
...
...
...
...
...
...
...
...
Use
...
variables
...
to
...
hold
...
the
...
total
...
of
...
each
...
dimensional
...
score.
...
Then
...
add
...
all
...
of
...
those
...
scores
...
to
...
get
...
the
...
overall
...
total.
...
Then
...
divide
...
the
...
overall
...
total
...
by
...
the
...
number
...
of
...
test
...
sessions
...
in
...
order
...
to
...
calculate
...
the
...
average.
...
Finally,
...
apply
...
the
...
round(x,
...
p)
...
function
...
to
...
round
...
to
...
two
...
decimal
...
places.
...
Tip |
---|
You must use the semi-colon ( \;) character to separate each line in the expression. {tip} {tip}When an expression contains multiple lines, the expression that appears on the last line (in this example, the line {{ |
Tip |
---|
When an expression contains multiple lines, the expression that appears on the last line (in this example, the line
) will be the final result returned. {tip} {code} |
Code Block |
---|
dim1Total = [Total: Dimension 1 Score];
dim2Total = [Total: Dimension 2 Score];
dim3Total = [Total: Dimension 3 Score];
dim4Total = [Total: Dimension 4 Score];
dim5Total = [Total: Dimension 5 Score];
overallTotal = sum(dim1Total, dim2Total, dim3Total, dim4Total, dim5Total);
overallCount = [Count: Session ID];
overallAverage = overallTotal / overallCount;
round(overallAverage, 2)
{code}
h2. Compare two or more Metrics
h4. Example: |
...
...
The
...
number
...
of
...
students
...
divided
...
by
...
the
...
number
...
of
...
teachers.
...
Distinct
...
counts
...
must
...
be
...
used
...
here
...
if
...
the
...
data
...
contains
...
more
...
than
...
one
...
row
...
per
...
student
...
or
...
teacher.
...
Code Block |
---|
[Distinct Count: Student ID] / [Distinct Count: Teacher ID]
{code}
h2. Use a Comparison to Create a Textual Result
h4. Example: Which scoring dimension had the lowest average score?
Use variables to hold the average of each of the dimensional scores. Use {{ |
Use variables to hold the average of each of the dimensional scores. Use min(...)
...
function
...
to
...
find
...
the
...
lowest
...
dimensional
...
score.
...
Use
...
nested
...
if
...
(cond,
...
trueValue,
...
falseValue)
...
blocks
...
to
...
return
...
which
...
dimension
...
matches
...
the
...
lowest
...
score.
...
Note:
...
If
...
more
...
than
...
one
...
dimension
...
shares
...
the
...
same
...
lowest
...
score,
...
this
...
only
...
returns
...
the
...
first
...
dimension
...
found.
...
Code Block |
---|
dim1Avg = [Average: Dimension 1 Score];
dim2Avg = [Average: Dimension 2 Score];
dim3Avg = [Average: Dimension 3 Score];
dim4Avg = [Average: Dimension 4 Score];
dim5Avg = [Average: Dimension 5 Score];
lowestScore = min(dim1Avg, dim2Avg, dim3Avg, dim4Avg, dim5Avg);
if (dim1Avg == lowestScore, "Dimension 1",
if (dim2Avg == lowestScore, "Dimension 2",
if (dim3Avg == lowestScore, "Dimension 3",
if (dim4Avg == lowestScore, "Dimension 4",
if (dim5Avg == lowestScore, "Dimension 5",
"Unknown"
)
)
)
)
)
{code}
h4. |
...
...
...
...
...
...
...
...
Use
...
a
...
variable
...
to
...
record
...
the
...
student-teacher
...
ratio.
...
Then
...
set
...
variables
...
to
...
mark
...
the
...
points
...
at
...
which
...
the
...
ratio
...
is
...
considered
...
medium
...
or
...
high.
...
Finally,
...
use
...
two
...
if
...
(cond,
...
trueValue,
...
falseValue)
...
blocks
...
to
...
return
...
the
...
"Low",
...
"Medium"
...
or
...
"High"
...
text
...
based
...
on
...
the
...
ratio
...
value.
...
Code Block |
---|
stRatio = [Distinct Count: Student ID] / [Distinct Count: Teacher ID];
mediumThreshold = 20;
highThreshold = 40;
if (stRatio < mediumThreshold,
"Low",
if (stRatio >= highThreshold,
"High",
"Medium"
)
)
{code}
h4. |
...
...
...
...
...
...
...
...
...
...
...
...
This
...
example
...
is
...
the
...
same
...
as
...
above,
...
but
...
applies
...
green,
...
red,
...
and
...
yellow
...
colors
...
to
...
the
...
text.
...
It
...
also
...
makes
...
the
...
word
...
"High"
...
appear
...
in
...
bold
...
formatting.
...
Code Block |
---|
stRatio = [Distinct Count: Student ID] / [Distinct Count: Teacher ID];
mediumThreshold = 20;
highThreshold = 40;
if (stRatio < mediumThreshold,
"<span style=\"color:green\">Low</span>",
if (stRatio >= highThreshold,
"<span style=\"color:red;font-weight:bold\">High</span>",
"<span style=\"color:yellow\">Medium</span>"
)
)
{code}
h4. |
...
...
...
...
...
...
...
...
...
Compare
...
the
...
average
...
score
...
of
...
the
...
1st
...
essay
...
submission
...
to
...
what
...
the
...
desired
...
proficiency
...
level
...
(e.g.
...
4).
...
Then
...
use
...
an
...
if
...
(cond,
...
trueValue,
...
falseValue)
...
block
...
to
...
return
...
the
...
text
...
"Below"
...
if
...
the
...
average
...
score
...
is
...
less
...
than
...
4,
...
or
...
to
...
return
...
"Above"
...
if
...
the
...
score
...
is
...
equal
...
to
...
or
...
greater
...
than
...
4.
...
Code Block |
---|
profLevel = 4;
if ([Average: Essay 1st Submission Score] < 4,
"Below",
"Above"
);
{code}
h4. |
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Use
...
a
...
variable
...
to
...
set
...
the
...
desired
...
proficiency
...
level
...
(e.g.
...
4).
...
Then
...
create
...
two
...
variables,
...
before
...
and
...
after
...
which
...
indicate
...
the
...
proficiency
...
level
...
of
...
the
...
1st
...
essay
...
submission
...
and
...
most
...
recent
...
submission,
...
respectively.
...
Finally,
...
use
...
nested
...
conditional
...
blocks
...
to
...
return
...
"Improved"
...
if
...
the
...
proficiency
...
went
...
from
...
"Below"
...
to
...
"Above",
...
"Unchanged"
...
if
...
it
...
remained
...
the
...
same,
...
or
...
"Got
...
Worse"
...
if
...
it
...
went
...
from
...
"Above"
...
to
...
"Below".
...
Code Block |
---|
profLevel = 4;
before = if ([Average: Essay 1st Submission Score] < profLevel,
"Below",
"Above"
);
after = if ([Average: Essay Most Recent Score] < profLevel,
"Below",
"Above"
);
if (before == "Below" && after == "Above",
"Improved",
if (before == "Above" && after == "Below",
"Got Worse",
"Unchanged"
)
)
{code}
h2. Using Metrics from Different Reports
h4. Example: Percentage of students who are proficient.
This expression requires that the *Proficient Students* report first be created. This report must contain what you would consider to be the proficient students, such as those with an "Average Most Recent Submission Score" between 4 and 6.
{warn}Note: You can not yet filter by an aggregate that is calculated on the fly. So if you have a report with a *Score* field, you can not create a filter that says "students who had an *Average Score* >= 4". You will need to have the *Average Score* as a pre-computed field in the data set.{warn}
{code} |
This expression requires that the Proficient Students report first be created. This report must contain what you would consider to be the proficient students, such as those with an "Average Most Recent Submission Score" between 4 and 6.
Note | ||
---|---|---|
| ||
You can not yet filter by an aggregate that is calculated on the fly. So if you have a report with a Score field, you can not create a filter that says "students who had an Average Score >= 4". You will need to have the Average Score as a pre-computed field in the data set. |
Code Block |
---|
countOfProficientStudents = [Distinct Count: Proficient Students: Student ID];
countOfMyStudents = [Distinct Count: Student ID];
percentageProficient = round(countOfProficientStudents / countOfMyStudents * 100, 2)
{code}
h4. |
...
...
...
...
...
...
...
...
...
...
...
Here
...
we
...
are
...
taking
...
the
...
ratio
...
of
...
the
...
current
...
percentage
...
of
...
proficiency
...
compared
...
to
...
the
...
desired
...
percentage.
...
For
...
example,
...
if
...
currently
...
20%
...
of
...
students
...
are
...
proficient,
...
and
...
our
...
goal
...
is
...
80%,
...
we
...
could
...
say
...
we
...
are
...
25%
...
of
...
the
...
way
...
to
...
our
...
goal
...
(that
...
is,
...
20
...
/
...
80).
...
Code Block |
---|
countOfProficientStudents = [Distinct Count: Proficient Students: Student ID];
countOfMyStudents = [Distinct Count: Student ID];
percentageProficient = round(countOfProficientStudents / countOfMyStudents * 100, 2);
percentageGoal = 80;
round(percentageProficient / percentageGoal * 100, 2)
{code}
h4. |
...
...
...
...
...
...
...
...
...
...
...
Here
...
we
...
are
...
taking
...
the
...
difference
...
between
...
our
...
current
...
percentage
...
of
...
proficiency
...
and
...
the
...
desired
...
percentage.
...
If
...
currently
...
20%
...
of
...
students
...
are
...
proficient,
...
and
...
our
...
goal
...
is
...
80%,
...
we
...
could
...
also
...
say
...
that
...
we
...
need
...
60%
...
more
...
students
...
to
...
become
...
proficient
...
to
...
meet
...
our
...
goal
...
(80
...
-
...
20).
...
Code Block |
---|
countOfProficientStudents = [Distinct Count: Proficient Students: Student ID];
countOfMyStudents = [Distinct Count: Student ID];
percentageProficient = round(countOfProficientStudents / countOfMyStudents * 100, 2);
percentageGoal = 80;
round(percentageGoal - percentageProficient, 2)
{code}
h4. |
...
...
...
...
...
...
...
...
...
...
In
...
these
...
examples,
...
All
...
Sessions
...
is
...
a
...
report
...
that
...
applies
...
no
...
filters
...
so
...
it
...
includes
...
all
...
scores
...
within
...
the
...
application.
...
Utah
...
Students
...
is
...
a
...
report
...
that
...
filters
...
by
...
the
...
state
...
of
...
Utah,
...
so
...
only
...
students
...
from
...
Utah
...
are
...
included.
...
Application-wide
...
comparison:
...
Code Block |
---|
appwideAverage = [Average: All Sessions: Essay Score];
reportAverage = [Average: Essay Score];
round(reportAverage - appwideAverage, 2)
{code}
|
State-wide
...
comparison:
...
Code Block |
---|
stateAverage = [Average: Utah Students: Essay Score];
reportAverage = [Average: Essay Score];
round(reportAverage - appwideAverage, 2)
{code} |