MedVision ad

How to calculate your ATAR from trial/past paper marks (1 Viewer)

carrotsss

New Member
Joined
May 7, 2022
Messages
4,435
Gender
Male
HSC
2023
I've personally never liked front end and never been a big fan of Python as I fell in love with programming through C# but I feel that TS/JS from python is not that big of a jump while JS (not too sure about TS) can be very strange at times I feel that if you put in the time you could definitely do it. Like even python to C or C++ is possible, will take a long time and will be very difficult is possible.

I feel that if you know a lot of the basic concepts it is very possible to switch languages for example at UTS we learn Python and Java along side each other and in concepts they were very similar although they did have some deviations it was definitely possible and the similarities was very apparent as a lot of programming can carry over.

Also there are an abundant amount of resources online, like I personally look up things all the time, and I would say that's fine as long as you're thinking about it and using the internet to help you with things that you don't know. The worst thing to do is only know how to follow tutorials as that's how you end up in tutorial hell but using it to help you with something you don't know is ok.

One other thing I would say is that you're initial code is probably gonna be horrendous when you look back upon it but that shows your learning and growing so it's ok. For example major project was absolutely horrible like I knew nothing about OOP so I made some really poor design choices but it's all part of learning.

Plus you can implement a MVC pattern which will allow you to use something like Python for the backend and then use HTML/CSS and JS for the front end.
Thank you! :)

I’m glad I’ll have plenty of the time after the HSC to sorta fully pick it up and work things out without a ton of pressure. Definitely still going to be completely garbage code on my first try but it’s all about what I learn from it I suppose
 

dav53521

Well-Known Member
Joined
Mar 23, 2022
Messages
317
Gender
Male
HSC
2022
Yeah that makes sense, honestly I’m almost certain I’ll struggle at first and get stuck in bugging hell no matter what but it’s a nice relatively simple project to get decent skills up in js, and I feel like that struggle to get something to work for hours is sorta something I enjoy anyway
Yeah programming is a lot of debugging and problem solving and sometimes it can feel like you're smashing your head against a brick wall but that's part of the fun (sometimes).

With stuff like breakpoints, watch and the ability to step through code debugging can be somewhat simple so I would definently recommend learning proper debugging.

Also another thing I would recommend is using tests, as firstly they're used in industry and secondly they can be used to easily see if you're code is working correctly and also reduces a lot of mindless manual testing which is very nice, there's probably more benefits but I can't think of them rn.
 

carrotsss

New Member
Joined
May 7, 2022
Messages
4,435
Gender
Male
HSC
2023
Yeah programming is a lot of debugging and problem solving and sometimes it can feel like you're smashing your head against a brick wall but that's part of the fun (sometimes).

With stuff like breakpoints, watch and the ability to step through code debugging can be somewhat simple so I would definently recommend learning proper debugging.

Also another thing I would recommend is using tests, as firstly they're used in industry and secondly they can be used to easily see if you're code is working correctly and also reduces a lot of mindless manual testing which is very nice there's probably more benefits but I can't think of them rn.
Sorry for being very uninformed but wdym by tests? Like just testing everything as I go along?
 

ExtremelyBoredUser

Bored Uni Student
Joined
Jan 11, 2021
Messages
2,479
Location
m
Gender
Male
HSC
2022
Sorry for being very uninformed but wdym by tests? Like just testing everything as I go along?
Oh boy... this is the annoying part

You'll make autotests for your implementation of functions/code which ensures your program is outputting the correct stuff

This'll take a time to get used to, very different to just simply chuckin in python and seeing what happens.
 

dav53521

Well-Known Member
Joined
Mar 23, 2022
Messages
317
Gender
Male
HSC
2022
Sorry for being very uninformed but wdym by tests? Like just testing everything as I go along?
That's fine I never knew about it before going into industry, when I say testing I mean unit tests (probably should've said that before my bad) but they're basically code that you run to test a function or some aspect of your code to check if it's working correctly. For example lets say I have a method that I expected to return double the number I inputted, I could write a unit test that calls the method with a set of pre-made test data and then check if the number returned is correct, if it is then the test will pass otherwise it'll fail and I know that the method is not working correctly.

The example I have given is very simple and test cases can get a lot more complex but they are quite useful and it's good to know how to write them.

https://en.wikipedia.org/wiki/Unit_testing This can probably give you a better idea but I would recommend researching them as they are very useful and can help prevent problems later down the line and as I mentioned before if you want to get into software dev/eng you will likely be required to write tests so it's good to get a head start.
 

carrotsss

New Member
Joined
May 7, 2022
Messages
4,435
Gender
Male
HSC
2023
Oh boy... this is the annoying part

You'll make autotests for your implementation of functions/code which ensures your program is outputting the correct stuff

This'll take a time to get used to, very different to just simply chuckin in python and seeing what happens.
That makes sense, I guess it’ll have to be something I sorta pick up as I go along. Definitely not used to that with python though I usually just set it to print whenever something isn’t right or whenever something passes to make debugging easier but not much further than that
 

dav53521

Well-Known Member
Joined
Mar 23, 2022
Messages
317
Gender
Male
HSC
2022
That makes sense, I guess it’ll have to be something I sorta pick up as I go along. Definitely not used to that with python though I usually just set it to print whenever something isn’t right or whenever something passes to make debugging easier but not much further than that
I would recommend definitely trying to implement them but getting use to them is quite difficult in the beginning and can feel like a chore at times and unit tests can become very complex with stuff such as mocking, testing database related methods/code and some other stuff but using them can save time and headaches down the road.
 

xoNat

don't worry, be happy
Joined
Apr 30, 2022
Messages
1,441
Gender
Undisclosed
HSC
2024
was it accurate 😭


Two responses from this thread
 

Babbabooey

New Member
Joined
Jan 31, 2024
Messages
26
Gender
Male
HSC
2024
I inserted these equations using a simple IF() formula for whether a student is within that 25th percentile, with both MAX(x,0) and MIN(x,100) functions to prevent an extreme increase/decrease in ATAR although this shouldn't ever really be necessary notwithstanding any errors in the fairly manual data entry process. All of the English scaled marks are then split into individual units and placed in the B column below the calculator. From this list the sum of the best 2 units of English is determined through the sum of a =sortn function which finds the 2 greatest units of scaled marks. Then, for the remaining 8 units needed for calculation, a similar process of unit splitting occurs into column D, and to account for cases in which more than 2 units of English are counted, the worst 4 units out of the six available English units are added to the list using an ascending =sortn function. Similar to the process for English, the sum of the remaining best 8 units is determined through the sum of a =sortn function, which is then summed once more with the best 2 units of English to find the aggregate. Due to the use of =sum(sortn) functions, it isn't immediately visible which units were counted, so I got around this by using another =sortn function (without =sum) which creates a list of counted units in columns E and F (for names and marks respectively), by using two sortn functions (one for English and one for the rest) with an area that includes all of the names and marks for each subject, with the marks as the sorting column, in descending order. The 'Counted units' cell in row 6 for each subject then just employs a simple =COUNTIF check for how many times the name of the subject is included in this sorted list of the top 10 units, with a simple failsafe so that it is equal to 0 where the scaled mark is zero, and equal to 2 when above 2 are present (which can occur for English where less than 10 units are present and it is equal to 0 in some rare cases - unimportant for real calculations but nonetheless included for quality of life). There is also a simple detector for when a 0 is present in the top 10 units list using another =sortn function in ascending order (as a 0 will be the lowest value) which notifies the user that less than 10 units are present.

Finally, the conversion from aggregate to ATAR is percentile-based, so it could not directly be modelled through a quadratic - this produced extreme inaccuracies at high ATAR ranges. I got around this by calculating the quadratics in sections, and found that quadratic formulas were remarkably accurate within small ranges of ~5 data points. Because the UAC data does not extend below 50, I created a simple quadratic by equating an aggregate of 0 to an ATAR of 0 and including the 50 and 55 data points to provide a relatively realistic curve below 50. These equations were then inserted using a simple =IFS formula, with an integrated limitation to provide an * for marks below 30 (both to mirror the HSC and to prevent usage in an area where the calculator is inaccurate), which is then rounded to the nearest 0.05 using an =MROUND function. I considered using more intense rounding below certain ATAR points to remove the pretence of that level of accuracy at low ATARs, but ended up resolving against it to allow usage of the calculator as a tool to track progress. Each of the "ATAR equivalent" cells use this same formula, except with the scaled mark multiplied by 5 or 10 (for 2 and 1 unit subjects respectively) in place of the aggregate.

I definitely plan on adding more years in the future (with a dropdown for each subject), but given the time commitment needed to model each subject it just isn't really feasible, and at the end of the day last year's data is usually going to be the most relevant anyway. Adding more subjects isn't really possible due to the limited available data on rawmarks.info, because I've added every subject with sufficient data.

Some statistics on the aligned->ATAR conversion from some quick testing with some ATARs published on this website + conquer from last year (this is not native functionality, if you want to do this then go into advanced mode and enter them in the "unrounded aligned marks", and make sure you put a number for the raw mark of mx2 so that mx1 counts as 2 units):
- UAC ATAR Calculator had an average delta of 0.1 ATAR points (minimum of 0, maximum of 0.25)
- My ATAR Calculator had an average delta of 0.1 ATAR points (minimum of 0, maximum of 0.2)
- Matrix ATAR Caculator had an average delta of 0.25 ATAR points (minimum of 0.15, maximum of 0.45)

Keep in mind most of the ATARs used were quite high (95-99.5) but this is a bit unavoidable given the dataset on BoS/conquer. Obviously the aligned->ATAR conversion isn't the main part of my calculator but it's accuracy is nonetheless important. It's also just impressive that matrix, a major tutor company with limitless resources has a less accurate calculator than I made fairly easily in a few days.

These tests are outdated - I may retest at a later date as these calculations are significantly more accurate after some improvements.

If you made it this far then thanks for reading and I hope you enjoy the calculator :)

Also if you find any issues or errors please let me know so I can fix them!
Hey mate,
I was entering numbers as a joke and find this weird phenomenon, where a 70 raw in Business Studies was going to about 81, but a 65 went to a 100, just wondering what's up with that?
1711535978787.png 1711536043747.png
 

Attachments

scaryshark09

∞∆ who let 'em cook dis long ∆∞
Joined
Oct 20, 2022
Messages
1,618
Gender
Undisclosed
HSC
1999
Hey mate,
I was entering numbers as a joke and find this weird phenomenon, where a 70 raw in Business Studies was going to about 81, but a 65 went to a 100, just wondering what's up with that?
View attachment 42794 View attachment 42796
its essentially a game of strategy.
you have to purposely get the exact amount of questions wrong to ensure you get a raw mark of 65. if you stuff this us, you're atar will suffer big time.
the whole point of it is to teach effective business strategy, as it assesses your ability to evaluate risk and opportunity.
 

elliott07

🌙
Joined
Feb 18, 2023
Messages
292
Location
lunar valleys in my mind
Gender
Undisclosed
HSC
2024
READ THIS BEFORE OPENING THE LINK:

There's a really common misconception that you can put trial marks straight into ATAR calculators - and if you've done this, you'll probably notice a really disappointing ATAR that's much lower than what you expected. The reason for this is that ATAR calculators are actually designed for 'aligned' marks, which are the marks you get on the actual HSC results day. These aligned marks are entirely different to your raw mark in the exam, which aren't released unless you pay NESA $60 per subject. I won't go into too much detail, but basically alignment usually increases your marks (sometimes by as much as 30 marks!) to match NESA's band descriptors, but the long and short of it is that you can't use normal ATAR calculators with your trial/past paper marks.

To fill this hole I've been developing my own ATAR calculator, which allows you to input your raw marks (could be trial or past paper marks), converts them into aligned marks using extrapolated formulas based on data from https://rawmarks.info, and then follows a similar process to other ATAR calculators to convert your aligned marks into an ATAR.

https://docs.google.com/spreadsheets/d/1btYJ_CrnBl9mKI4jKoRW3ALxHKiKamtU5UtGawmbeOg/edit?usp=sharing
(you'll have to make a copy to use it)

DISCLAIMER: all data is based on the 2022 HSC unless indicated otherwise with italics or an *. If your trial was easier/harder than last years HSC then I obviously can't account for it, but you could just enter in a slightly lower/higher mark if you wish to - The ideal use for this calculator would be actually doing all of the 2022 HSC as past papers for near-perfect accuracy, but obviously that's a bit unrealistic. The other factor is that this is just an estimate of where you're at right now, and obviously things will change (usually for the better) over time, and your moderated School Assessment Mark will also be a factor in your marks.

DISCLAIMER 2: Just to clarify since people have been asking, this calculator will produce different results to UAC ATAR Compass, that is intended behaviour. The calculators are fundamentally different, ATAR Compass is intended for aligned marks while this calculator is for raw marks.

I hope this is helpful :)

Technical details (stop reading here if you're not interested)
Generally, the way the calculator itself functions is fairly simple - it's hidden normally but it's all visible if you open the "advanced" mode. The methodology for development was a little more interesting. This explanation will hopefully be helpful for anyone who wishes to understand how this calculator works or undertake a similar project in the future (and I just want to talk about it).

For the raw->aligned mark conversion, I found through research that the process of alignment is piecewise linear - NESA sets band cutoffs based on the band descriptors, and then linearly interpolates between marks (source here, also confirmed through my own testing). The data from https://rawmarks.info for many subjects includes multiple marks within each band range, and so I plotted all of the 2022 marks for each subject in desmos, and hence found the (linear) equation which resolved correct rounded aligned marks and matched to an exact rounded band cutoff for each available band (example), and then beyond available data I simply used a linear equation from 0 to the lowest known band cutoff. The accuracy of this method is dependent on the subject - for subjects with lots of raw marks data (e.g. most Mathematics subjects, English Advanced, Chemistry, Physics and Economics) this results in a perfect equation for the band 6 range and an equation which can theoretically be +/- 1 mark for the band 4/5 range. For most other subjects, the equation should theoretically be +/- 1 aligned mark - this is an inherent limit to inaccuracy once two data points are available from the middle/lower end of a band range as any further inaccuracy of band cutoff would result in an inaccurate result for the known data point. Below the available data range, the simple linear equation is theoretically not entirely valid, however given that the vast majority of students sit within or near the known data, its a sufficient compromise, which should provide results within a reasonable range that realistically is good enough given the low changes in scaled marks at low aligned marks, and it allows the calculator to properly function below known data where previous versions would simply output errors - though I still wouldn't advise usage of the calculator for a student with results in bands 1-3. Subjects which are marked with an asterisks required usage of multiple years of data - I resolved to only use this method when the data for one year was extremely scarce and newer data was fairly consistent, enabling a fairly limited degradation of accuracy, which should remain within the standard +/- 1 aligned mark in the vast majority of cases. Subjects which are marked with italics have data from long periods of time and/or a lack data within an included band range, and are only included due to requests - their data will be within +/- 2 aligned marks typically.

The equations found in desmos were then inputted into sheets through a relatively simple =IFS() formula to select the correct linear equation based on which band region a raw mark sits in, in addition to a simple MIN(x,100) function to remove the possibility of marks above 100 (or rather 50 for 1 unit subjects). The sheet uses two cells to store aligned marks, the first, row 3 is a rounded version of the aligned mark for the sake of creating a more simple user interface and preventing confusion given the rounded marks which a student is likely used to. However, row 7 contains the raw mark which is actually used for scaling calculations, as UAC has confirmed they use marks rounded to two decimal places.

The scaled mark conversion doesn't seem to follow any specific equation, rather a more complex system based on the results of each percentile of English marks within a subject, however, UAC provides significantly more data than NESA, and their data is much better separated by percentile cutoffs in the scaling report. Previously the calculator used a simple singular polynomial model for each subject, however this produced some inaccuracies due to the inherently inconsistent conversion, and furthermore Google Sheets limits their displayed quadratics to 3 significant figures (despite their own graphing using many more significant figures, implying they do exist), which was the primary concern because I found it causing some inaccuracies (as much as 2 scaled marks in some cases). As such, I coded a script in python (source code here) which uses numpy and scipy to find a polynomial equation to model subsets of each possible group of 3 data points, and then automatically inserts them into a sheets formula which calculates the scaled mark through individual subset polynomial models between the known data points. The script made it feasible to find this many individual subset models and allowed equations to 15 significant figures. Similar to the raw marks calculation, the script also uses a simple linear calculation below the 25th percentile which is unfortunately unavoidable, but by nature 75% of students and likely nearly 100% of users aren't in that region, so it is a relatively minor limitation.

(1/2)
how come a 60 in business is 96 atar equivalent
Screen Shot 2024-05-16 at 3.19.13 pm.png
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Top