9.4

Tsuki*發表於2024-12-07

import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols

讀取 Excel 檔案

data = pd.read_excel('9.4.xlsx')

定義模型

model = ols('產量 ~ C(品種) + C(化肥) + C(品種):C(化肥)', data=data).fit()

進行方差分析

anova_table = sm.stats.anova_lm(model, typ=2)

print(anova_table)

根據 p 值判斷是否有顯著影響

if anova_table.loc['品種', 'PR(>F)'] < 0.05:
print("品種對小麥產量有顯著影響")
else:
print("品種對小麥產量沒有顯著影響")

if anova_table.loc['化肥', 'PR(>F)'] < 0.05:
print("化肥對小麥產量有顯著影響")
else:
print("化肥對小麥產量沒有顯著影響")

if anova_table.loc['品種:化肥', 'PR(>F)'] < 0.05:
print("品種和化肥的互動作用對小麥產量有顯著影響")
else:
print("品種和化肥的互動作用對小麥產量沒有顯著影響")

相關文章