我使用以下函数为df
中的Values列计算测试。
我的目标是能够为每个年份和类别执行测试。
from scipy.stats import ttest_rel
import scipy.stats as stats
import numpy as np
import pandas as pd
def Compute(df, Values, popmean=58):
test, pvalue = stats.ttest_1samp(Values, popmean, nan_policy='omit')
return test, pvalue
现在,如果我调用函数Compute(df, Values, popmean=58)
,
无论年份和类别如何,它都将执行所有值的计算。最终,我想要一个解决方案,根据测试的每个年份和类别过滤数据,然后列出所有结果。
Year Category Values
1990 Alpha 171
1990 Alpha 145
1990 Alpha 147
1995 Alpha 161
1995 Alpha 171
1995 Alpha 141
1990 Beta 115
1990 Beta 132
1990 Beta 146
1995 Beta 102
1995 Beta 97
1995 Beta 95