<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Adam, the reason Kapernka and Bazin both had less values was that I was restricting  only those two fits to 6 or more data points, . If they didnt have that, I assigned their Rchi2 value and median to be NaN. So the only fits that are actually giving NaN are the GP's. The Kapernka and Bazin work with all curves that have more than 6 data points.
Example of Gaussian process that gives NaN value
Step1:  The arrays printed out are the individual flux predictions. Some are being calculated correctly, but some turn out as NaN, causing the resulting Rchi2 value to be NaN.
Step2:  Heres another example where the flux predictions are the same for both the matern and the real kernel
Step3:  One last Example
<ASSISTANT_TASK:>
Python Code:
#Create new supernovae object
SN = Supernovae('../../../OSC_data/JSON_data/sne-2010-2014-master/Gaia14adz.json')
#Load in lightcurve data
SN.load_LightCurves()
Explanation: Adam, the reason Kapernka and Bazin both had less values was that I was restricting  only those two fits to 6 or more data points, . If they didnt have that, I assigned their Rchi2 value and median to be NaN. So the only fits that are actually giving NaN are the GP's. The Kapernka and Bazin work with all curves that have more than 6 data points.
Example of Gaussian process that gives NaN value
End of explanation
print(SN.Lightcurves['g_4,5'].Gaussian_process(Real_Kernel))
print(SN.Lightcurves['g_4,5'].Gaussian_process(Matern_Kernel))
Explanation: The arrays printed out are the individual flux predictions. Some are being calculated correctly, but some turn out as NaN, causing the resulting Rchi2 value to be NaN.
End of explanation
#Create new supernovae object
SN = Supernovae('../../../OSC_data/JSON_data/sne-2010-2014-master/LSQ12ca.json')
#Load in lightcurve data
SN.load_LightCurves()
print(SN.Lightcurves['B_2'].Gaussian_process(Real_Kernel))
print(SN.Lightcurves['B_2'].Gaussian_process(Matern_Kernel))
Explanation: Heres another example where the flux predictions are the same for both the matern and the real kernel
End of explanation
#Create new supernovae object
SN = Supernovae('../../../OSC_data/JSON_data/sne-2010-2014-master/iPTF13bjx.json')
#Load in lightcurve data
SN.load_LightCurves()
SN.Lightcurves['R_1'].Gaussian_process(Real_Kernel)
SN.Lightcurves['R_1'].Gaussian_process(Matern_Kernel)
Explanation: One last Example
End of explanation
<END_TASK>