|
yofx.org posed a problem on 4/6/10 which involves determining which exercise problems should be covered in a review session based on statistics gathered by MML (MyMathLab) courseware. The data is provided in a spreadsheet. The approach that comes to mind goes like this: Pick out, say, two columns that appear most relevant (like number wrong and time spent). "Normalize" the columns by dividing each entry by the sum of all the entries in that column. Decide what "weight" you want to give to each column; maybe you think number wrong deserves a weight of .7 and time spent a weight of .3. Compute the weighted sums for each row (i.e. each exercise) ex(i) = .7*nw(i) + .3*ts(i) where i stands for the ith exercise, nw(i) is the normalized value of the number wrong on the ith exercise and ts(i) is the normalized value of the time spent on the ith exercise. If you sort the new column we've named ex (for exercise) in descending order then the indices associated with the exercises that come first would be the exercises you'd want to review. Example: Say there were 3 exercises and the sorted column came out:
e(2) = .7*.7 + .3*.8 = .49 + .24 = .73 So you'd review exercise #2. Here is the April "assignment" for the "not just tiny-c Programming Group:" Design, code and test a Python program which reads column data, asks the user for weights and computes and prints in descending order the exercises to review.
|