Provide python code and detailed explaination for each step for the task below.
The basic functionality of data processing (data initialization, data insertion), should be done using Numpy library while the computation (ML) part should be done using Scikit learn library as much as possible (note: you can combine with what you've done from the previous tasks) .
Use precision_score and recall_score function in scikit - learn
Create a Python program:
The program asks the user for input N (positive integer) and reads it .
Then the program asks the user to provide N (x, y) points (one by one) and reads all of them: first: x value, then: y value for every point one by one. X is treated as the ground truth (correct) class label and Y is treated as the predicted class. Both X and Y are either 0 or 1 .