I have the following code using statsmodels
x_ran = [random.random() for i in range(100)]
y_ran = [random.random()*800 + random.randint(1, 2000) for i in range(100)]
mod2= sm.OLS(y_ran, x_ran)
res = mod2.fit()
print(res.summary2())
The summary is as follows:
Results: Ordinary least squares
================================================================================
Model: OLS Adj. R-squared (uncentered): 0.623
Dependent Variable: y AIC: 1629.9400
Date: 2020-01-23 18:04 BIC: 1632.5452
No. Observations: 100 Log-Likelihood: -813.97
Df Model: 1 F-statistic: 166.4
Df Residuals: 99 Prob (F-statistic): 6.37e-23
R-squared (uncentered): 0.627 Scale: 6.9493e+05
------------------------------------------------------------------------------------
Coef. Std.Err. t P>|t| [0.025 0.975]
------------------------------------------------------------------------------------
x1 1746.1500 135.3722 12.8989 0.0000 1477.5422 2014.7578
--------------------------------------------------------------------------------
Omnibus: 3.045 Durbin-Watson: 1.861
Prob(Omnibus): 0.218 Jarque-Bera (JB): 2.607
Skew: 0.289 Prob(JB): 0.272
Kurtosis: 2.460 Condition No.: 1
================================================================================
Why are the p-value so low and the adjusted variance so high given that the data is randomly generated?