Preview:
import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols

y=(320,428,353,331,358,400,372,455,375,328,383,308,350,417,400,325, 378,275,340, 360, 356,370,395,375,398,358,334,340,320,430)
y

t=('v1','v1','v1','v1','v1','v1','v2','v2','v2','v2','v2','v2','v3','v3','v3','v3','v3','v3','v4','v4','v4','v4','v4','v4','v5','v5','v5','v5','v5','v5',)
t
   
df=pd.DataFrame({'Yield':y,'Treatment':t})
print(df)                 

model=ols('Yield~Treatment',data=df).fit()
crd_table=sm.stats.anova_lm(model,typ=1)
print(crd_table)

p_val= 0.990685

if p_val>0.05:
    print('Accept H0 ')
else:
    print('Reject H0 ')
downloadDownload PNG downloadDownload JPEG downloadDownload SVG

Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!

Click to optimize width for Twitter