Forum Discussion
School Assessment Model
I work in a school in the UK. For our Year 7 to 9 pupils, they are assessed with what are called mastery levels as a current grade. These range from Emerging to Mastered. Pupils are assessed 3 times a year at the end of each term, which our system calls resultsets. They also have a Target - which remains the same through each year/resultset.
We currently use Excel to track pupils - one worksheet per subject, which would look like:
English
Name Mastery Level Target +/- Target
Pupil 1 Meeting Meeting+ 0.5
The mastery levels are turned to a number with a VLOOKUP to give us a +/- target.
We are starting to use Power BI - and have successfully looked at attendance and behaviour - but now the powers that be want to look at assessment and I'm struggling with it.
I have a table called Mastery Levels which contains pupil id, subject, resultset, mastery level.
Then, I have a table called Targets which contains pupil id, subject, target (a mastery level).
Both of these two tables are linked to what is essentially a lookup table - which contains the mastery levels and a corresponding numerical value (i.e. Emerging = 1, Emerging+ = 1.5 etc. etc.)
I can produce a table which links to subject and class slicers to give me:
Name Mastery Level Target
Pupil 1 Meeting Meeting+
However, I am really struggling to produce a +/- Target measure.
I've tried appending the Mastery Levels table with the Targets table so everything is in one table - and then used Merge Query to bring in the numerical value of each mastery level.
I've tried a few different measures, but no joy - the calculation is either wrong or in the table it doesn't react to the subject slicer on the page and a pupil will have all their subject mastery levels. It's:
Target Difference = CALCULATE( AVERAGE(Mastery Levels[Points]),Results[Type]="Current") - CALCULATE( AVERAGE(Mastery Levels[Target Points]),Results[Type]="Target")
I don't know if I need to build in a RELATED bit so the Mastery Level for English (for example) finds the Target for English and then does the sum?
At the moment, we just have the autumn assessment mastery levels - before Easter we'll have a spring set - which adds to the complexity.
I'm sure there's more than one way to go about this - but if anyone has any thoughts as to a fairly simple way to go about this, I'd be extremely grateful!
Keep them separate as they are independent fact tables.
Then add the necessary dimension tables and wire them together
With that your under/over calculation becomes very simple
Here is a measure version, but frankly this can be done as calculated columns too.
3 Replies
- lbendlinSuper User
Please provide sample data that covers your issue or question completely, in a usable format (not as a screenshot).
Do not include sensitive information or anything not related to the issue or question.
If you are unsure how to upload data please refer to https://community.fabric.microsoft.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-Forum/ba-p/963216
Please show the expected outcome based on the sample data you provided.
Want faster answers? https://community.fabric.microsoft.com/t5/Desktop/How-to-Get-Your-Question-Answered-Quickly/m-p/1447523 - duesouthHelper I
The first table I have is for our pupils working at grades (which are basically the grade they are currently on).
ID Year Result Result date Resultset Aspect Type Aspect Name Subject Pupil 1 Year 7 Co 45246 Year 7 Autumn WAG SC KS3 Mastery Ad Art And Design Pupil 2 Year 7 Me+ 45257 Year 7 Autumn WAG SC KS3 Mastery Ad Art And Design Pupil 1 Year 7 De+ 45250 Year 7 Autumn WAG SC KS3 Mastery Da Dance Pupil 2 Year 7 De+ 45258 Year 7 Autumn WAG SC KS3 Mastery Da Dance Pupils also have a target grade, which I've put in a separate table:
External Id Year Result Result date Resultset Aspect Type Aspect Subject Pupil 2 Year 7 Co 45247 Target SC KS3 Target Ad Art And Design Pupil 1 Year 7 Co 45247 Target SC KS3 Target Ad Art And Design Pupil 2 Year 7 Co 45247 Target SC KS3 Target Da Dance Pupil 1 Year 7 Co 45247 Target SC KS3 Target Da Dance I've put in a table to convert the results into a number (which is what we've been doing in Excel via VLOOKUP):
Mastery Level Points Mastery Description P1 0.3 P1 P2 0.5 P2 P3 0.7 P3 Em 1 Emerging Em+ 2 Emerging+ De 3 Developing De+ 4 Developing+ Me 5 Meeting Me+ 6 Meeting+ Co 7 Confident Co+ 8 Confident+ Ma 9 Mastered What I am looking to do is for each subject, calculate a +/- Target.
So for Pupil 1 in Art - is currently on Co (which equates to 7) and their Target is also Co (7), so +/- Target is 0. For Pupil 2 in Art, they are currently at Me+ (6) and their Target is Co (7) - so I'm looking for a -1 outcome.
I don't know if it would be best to have separate tables for the current grades and targets - or put them into 1 big table. I could calculate the +/- Target outside of Power BI and bring in that as a table, but I figure if I can do this in Excel, then I should in Power BI...
- lbendlinSuper User
Keep them separate as they are independent fact tables.
Then add the necessary dimension tables and wire them together
With that your under/over calculation becomes very simple
Here is a measure version, but frankly this can be done as calculated columns too.