Spaces:
Runtime error
Runtime error
import scipy.stats as stats | |
import pandas as pd | |
inference_map = { | |
"per_pos":"Positivity", | |
"per_for":"Formality", | |
"per_ac":"Agency" | |
} | |
def compute_ttest(df_m, df_f, hallucination=False): | |
results = [] | |
for inference in ["per_pos", "per_for", "per_ac"]: | |
if not hallucination: | |
per_f = df_f[inference].tolist() | |
per_m = df_m[inference].tolist() | |
res = stats.ttest_ind(a=per_m, b=per_f, equal_var=True, alternative='greater') | |
statistic, pvalue = res[0], res[1] | |
results.append([inference_map[inference], statistic, pvalue]) | |
if hallucination: | |
hal_f = df_f[inference].tolist() | |
ori_f = df_f['{}_1'.format(inference)].tolist() | |
hal_m = df_m[inference].tolist() | |
ori_m = df_m['{}_1'.format(inference)].tolist() | |
res1 = stats.ttest_ind(a=hal_m, b=ori_m, equal_var=True, alternative='greater') | |
statistic1, pvalue1 = res1[0], res1[1] | |
results.append(["Male", inference, statistic1, pvalue1]) | |
res2 = stats.ttest_ind(a=ori_f, b=hal_f, equal_var=True, alternative='greater') | |
statistic2, pvalue2 = res2[0], res2[1] | |
results.append(["Female", inference, statistic2, pvalue2]) | |
if not hallucination: | |
results_df = pd.DataFrame(results, columns=["Inference", "Statistic", "P-Value"]) | |
else: | |
results_df = pd.DataFrame(results, columns=["Gender", "Inference", "Statistic", "P-Value"]) | |
return results_df |