# Making predictions based on the user's perspective

I have a dataframe containing Id's of tests and different features/characteristics of the tests (length, number of contents etc). The tests are either easy (=1) or hard (=0). Using these features, I built a model that predicts whether a test is hard or easy based on these features (with XGBoost, also with Google AutoML etc).

Now, students solve the tests (correctly = 1, or incorrectly = 0). I want to predict how a student would solve each test. So basically I have two datasets, where I want to predict the result:

testId      feature1     feature2     featureN
t1          0            23           22
t2          1            34           37
...


and

studentId     testId     result
s1            t1         0
s1            t2         1
s2            t2         1
...


I looked into collaborative filtering a built a model using only the test results from the students. But I want to look at the features of the tests, and do something similar to what I did to predict the test difficulty, only that now it is from the student perspective. How can I do this?