# Making an ensemble model for high F1 score

I presently have 2 algorithms that have a numerical output. Using a threshold of 0.9, I get the classification output. Let's say they are:

1. P (high precision, low recall)
2. R (high recall, low precision)

Individually, they have poor F-1 scores. Is the naive way of creating a classifier C as:

C(*) = x.P(*) + (1-x).R(*)

And optimizing for x and threshold a good approach to improve the F-1 score? Or is there some alternate approach I must try. Note: I can't vary functions P() and R(). Their outputs are provided as a black-box function.