// Numbas version: finer_feedback_settings {"name": "Ed's copy of linear regression", "extensions": ["stats"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"tags": ["checked2015", "data analysis", "fitted value", "PSY2010", "regression", "residual value", "statistics"], "variablesTest": {"condition": "", "maxRuns": 100}, "statement": "

To monitor its staff appraisal methods, a personnel department compares the results of the tests carried out on employees at their first appraisal with an assessment score of the same individuals two years later. The resulting data are as follows:

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Employee$\\var{obj[0]}$$\\var{obj[1]}$$\\var{obj[2]}$$\\var{obj[3]}$$\\var{obj[4]}$$\\var{obj[5]}$$\\var{obj[6]}$$\\var{obj[7]}$$\\var{obj[8]}$$\\var{obj[9]}$
First Test $(X)$$\\var{r1[0]}$$\\var{r1[1]}$$\\var{r1[2]}$$\\var{r1[3]}$$\\var{r1[4]}$$\\var{r1[5]}$$\\var{r1[6]}$$\\var{r1[7]}$$\\var{r1[8]}$$\\var{r1[9]}$
Later Score $(Y)$$\\var{r2[0]}$$\\var{r2[1]}$$\\var{r2[2]}$$\\var{r2[3]}$$\\var{r2[4]}$$\\var{r2[5]}$$\\var{r2[6]}$$\\var{r2[7]}$$\\var{r2[8]}$$\\var{r2[9]}$
\n ", "ungrouped_variables": ["tsqovern", "a", "b", "obj", "r1", "r2", "ss", "res", "ssq", "n", "a1", "ch", "spxy", "ls", "tol", "t", "sc", "sxy", "b1"], "metadata": {"licence": "Creative Commons Attribution 4.0 International", "notes": "\n \t\t

30/09/2102:

\n \t\t

Introduced three functions:

\n \t\t

1. To produce the ranking of a list of 8 numbers.

\n \t\t

2. To produce a list of 8 numbers from a scale of 1..20 which are all distinct.

\n \t\t

3. To produce the maximum of the numbers in a list.

\n \t\t

4. Given an array such as in 2. to find another such array which has max diff between any two corresponding entries less than a given number. This is to ensure that the two array produced do not differ too much, as the point of the exercise is to show that there is a positive high correlation.

\n \t\t

 

\n \t\t", "description": "

Find a regression equation.

"}, "variable_groups": [], "parts": [{"showCorrectAnswer": true, "prompt": "

Calculate the equation of the best fitting regression line:

\n

\\[Y = a + b \\times X.\\] Find $a$ and $b$ to 5 decimal places, then input them below to 3 decimal places. You will use these approximate values in the rest of the question. 

\n

$b=\\;$[[0]],      $a=\\;$[[1]] (enter both to 3 decimal places).

\n

You are given the following information:

\n \n \n \n \n \n \n \n \n \n \n \n
First Test$(X)$$\\sum x=\\;\\var{t[0]}$$\\sum x^2=\\;\\var{ssq[0]}$
Later Score$(Y)$$\\sum y=\\;\\var{t[1]}$$\\sum y^2=\\;\\var{ssq[1]}$
\n

Also you are given $\\sum xy = \\var{sxy}$.

\n

Click on Show steps if you want more information on calculating $a$ and $b$. You will not lose any marks by doing so.

\n

 

", "stepsPenalty": 0, "steps": [{"showCorrectAnswer": true, "prompt": "

To find $a$ and $b$ you first find  $\\displaystyle b = \\frac{SPXY}{SSX}$ where:

\n

$\\displaystyle SPXY=\\sum xy - \\frac{(\\sum x)\\times (\\sum y)}{10}$

\n

$\\displaystyle SSX=\\sum x^2 - \\frac{(\\sum x)^2}{10}$

\n

Then $\\displaystyle a = \\frac{1}{10}\\left[\\sum y-b \\sum x\\right]$

\n

Now go back and fill in the values for $a$ and $b$.

", "scripts": {}, "type": "information", "marks": 0}], "gaps": [{"showCorrectAnswer": true, "precision": "3", "allowFractions": false, "precisionPartialCredit": 0, "correctAnswerFraction": false, "type": "numberentry", "strictPrecision": false, "showPrecisionHint": false, "scripts": {}, "maxValue": "b+tol", "precisionType": "dp", "minValue": "b-tol", "precisionMessage": "You have not given your answer to the correct precision.", "marks": 1}, {"showCorrectAnswer": true, "precision": "3", "allowFractions": false, "precisionPartialCredit": 0, "correctAnswerFraction": false, "type": "numberentry", "strictPrecision": false, "showPrecisionHint": false, "scripts": {}, "maxValue": "a+tol", "precisionType": "dp", "minValue": "a-tol", "precisionMessage": "You have not given your answer to the correct precision.", "marks": 1}], "scripts": {}, "marks": 0, "type": "gapfill"}, {"showCorrectAnswer": true, "precision": "2", "allowFractions": false, "precisionPartialCredit": 0, "correctAnswerFraction": false, "type": "numberentry", "strictPrecision": false, "showPrecisionHint": false, "prompt": "

What is the predicted Later score for employee $\\var{obj[ch]}$?

\n

Use the values of $a$ and $b$ you input above.

\n

Enter the predicted Later score here: (to 2 decimal places)

", "scripts": {}, "maxValue": "ls+0.01", "precisionType": "dp", "minValue": "ls-0.01", "precisionMessage": "You have not given your answer to the correct precision.", "marks": 1}, {"showCorrectAnswer": true, "prompt": "

Use the result above to calculate the residual value for employee $\\var{obj[ch]}$.

\n

Click on Show steps to see what is meant by the residual value if you have forgotten. You will not lose any marks by doing so.

\n

Residual value =  (to 2 decimal places).[[0]]

", "stepsPenalty": 0, "steps": [{"showCorrectAnswer": true, "prompt": "

The residual value is given by:

\n

RESIDUAL = OBSERVED - FITTED.

\n

In this case the observed value for $\\var{obj[ch]}$ is $\\var{r2[ch]}$ and you get the fitted value by feeding the First test value  $\\var{r1[ch]}$ into the regression equation.

\n

 

", "scripts": {}, "type": "information", "marks": 0}], "gaps": [{"showCorrectAnswer": true, "precision": "2", "allowFractions": false, "precisionPartialCredit": 0, "correctAnswerFraction": false, "type": "numberentry", "strictPrecision": false, "showPrecisionHint": false, "scripts": {}, "maxValue": "res[ch]+0.01", "precisionType": "dp", "minValue": "res[ch]-0.01", "precisionMessage": "You have not given your answer to the correct precision.", "marks": 1}], "scripts": {}, "marks": 0, "type": "gapfill"}], "showQuestionGroupNames": false, "advice": "", "preamble": {"js": "", "css": ""}, "name": "Ed's copy of linear regression", "variables": {"b": {"templateType": "anything", "name": "b", "group": "Ungrouped variables", "definition": "precround(spxy/ss[0],3)", "description": ""}, "sxy": {"templateType": "anything", "name": "sxy", "group": "Ungrouped variables", "definition": "sum(map(r1[x]*r2[x],x,0..n-1))", "description": ""}, "ch": {"templateType": "anything", "name": "ch", "group": "Ungrouped variables", "definition": "random(0..9)", "description": ""}, "ls": {"templateType": "anything", "name": "ls", "group": "Ungrouped variables", "definition": "precround(a+b*sc,2)", "description": ""}, "b1": {"templateType": "anything", "name": "b1", "group": "Ungrouped variables", "definition": "random(0.25..0.45#0.05)", "description": ""}, "r2": {"templateType": "anything", "name": "r2", "group": "Ungrouped variables", "definition": "map(round(a1+b1*x+random(-9..9)),x,r1)", "description": ""}, "tol": {"templateType": "anything", "name": "tol", "group": "Ungrouped variables", "definition": "0.001", "description": ""}, "res": {"templateType": "anything", "name": "res", "group": "Ungrouped variables", "definition": "map(precround(r2[x]-(a+b*r1[x]),2),x,0..n-1)", "description": ""}, "r1": {"templateType": "anything", "name": "r1", "group": "Ungrouped variables", "definition": "repeat(round(normalsample(67,8)),10)", "description": ""}, "spxy": {"templateType": "anything", "name": "spxy", "group": "Ungrouped variables", "definition": "sxy-t[0]*t[1]/n", "description": ""}, "a1": {"templateType": "anything", "name": "a1", "group": "Ungrouped variables", "definition": "random(10..20)", "description": ""}, "obj": {"templateType": "anything", "name": "obj", "group": "Ungrouped variables", "definition": "['A','B','C','D','E','F','G','H','I','J']", "description": ""}, "sc": {"templateType": "anything", "name": "sc", "group": "Ungrouped variables", "definition": "r1[ch]", "description": ""}, "tsqovern": {"templateType": "anything", "name": "tsqovern", "group": "Ungrouped variables", "definition": "[t[0]^2/n,t[1]^2/n]", "description": ""}, "t": {"templateType": "anything", "name": "t", "group": "Ungrouped variables", "definition": "[sum(r1),sum(r2)]", "description": ""}, "ss": {"templateType": "anything", "name": "ss", "group": "Ungrouped variables", "definition": "[ssq[0]-t[0]^2/n,ssq[1]-t[1]^2/n]", "description": ""}, "n": {"templateType": "anything", "name": "n", "group": "Ungrouped variables", "definition": "10", "description": ""}, "ssq": {"templateType": "anything", "name": "ssq", "group": "Ungrouped variables", "definition": "[sum(map(x^2,x,r1)),sum(map(x^2,x,r2))]", "description": ""}, "a": {"templateType": "anything", "name": "a", "group": "Ungrouped variables", "definition": "precround(1/n*(t[1]-spxy/ss[0]*t[0]),3)", "description": ""}}, "question_groups": [{"pickQuestions": 0, "name": "", "questions": [], "pickingStrategy": "all-ordered"}], "type": "question", "functions": {"pstdev": {"parameters": [["l", "list"]], "language": "jme", "type": "number", "definition": "sqrt(abs(l)/(abs(l)-1))*stdev(l)"}}, "rulesets": {"std": ["all", "fractionNumbers", "!collectNumbers", "!noLeadingMinus"]}, "contributors": [{"name": "Newcastle University Mathematics and Statistics", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/697/"}, {"name": "Ed Stewart", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3232/"}]}]}], "contributors": [{"name": "Newcastle University Mathematics and Statistics", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/697/"}, {"name": "Ed Stewart", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3232/"}]}