Forum Discussion

duesouth's avatar
duesouth
Helper I
2 years ago
Solved

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

  • 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

  • The first table I have is for our pupils working at grades (which are basically the grade they are currently on).

     

    IDYearResultResult dateResultsetAspect TypeAspect NameSubject
    Pupil 1Year 7Co45246Year  7 AutumnWAGSC KS3 Mastery AdArt And Design
    Pupil 2Year 7Me+45257Year  7 AutumnWAGSC KS3 Mastery AdArt And Design
    Pupil 1Year 7De+45250Year  7 AutumnWAGSC KS3 Mastery DaDance
    Pupil 2Year 7De+45258Year  7 AutumnWAGSC KS3 Mastery DaDance

     

    Pupils also have a target grade, which I've put in a separate table:

     

    External IdYearResultResult dateResultsetAspect TypeAspectSubject
    Pupil 2Year 7Co45247 TargetSC KS3 Target AdArt And Design
    Pupil 1Year 7Co45247 TargetSC KS3 Target AdArt And Design
    Pupil 2Year 7Co45247 TargetSC KS3 Target DaDance
    Pupil 1Year 7Co45247 TargetSC KS3 Target DaDance

     

    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 LevelPointsMastery Description
    P10.3P1
    P20.5P2
    P30.7P3
    Em1Emerging
    Em+2Emerging+
    De3Developing
    De+4Developing+
    Me5Meeting
    Me+6Meeting+
    Co7Confident
    Co+8Confident+
    Ma9Mastered

     

    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...

    • lbendlin's avatar
      lbendlin
      Super 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.