def do_anovas(some_df, variable): ''' This method takes a dataframe, returns the pyvttbl anova object for that element ''' pyv_df = DataFrame() if variable == 'qp': pyv_df['qual'] = str_list(some_df['qualification_performance']) pyv_df['vals'] = int_list(some_df['adj_diffs']) elif variable == 'ed': pyv_df['qual'] = str_list(some_df['education_level']) pyv_df['vals'] = int_list(some_df['adj_diffs']) elif variable == 'fp': pyv_df['qual'] = str_list(some_df['fps']) pyv_df['vals'] = int_list(some_df['adj_diffs']) else: return None anova = pyv_df.anova1way('vals', 'qual') anova['omega-sq'] = get_w(anova) return anova
def test2(self): R = """Anova: Single Factor on SUPPRESSION SUMMARY Groups Count Sum Average Variance ============================================== AA 128 2048 16 148.792 AB 128 2510.600 19.614 250.326 LAB 128 2945.000 23.008 264.699 O'BRIEN TEST FOR HOMOGENEITY OF VARIANCE Source of Variation SS df MS F P-value eta^2 Obs. power ============================================================================================ Treatments 1021873.960 2 510936.980 5.229 0.006 0.027 0.823 Error 37227154.824 381 97709.068 ============================================================================================ Total 38249028.783 383 ANOVA Source of Variation SS df MS F P-value eta^2 Obs. power ========================================================================================= Treatments 3144.039 2 1572.020 7.104 9.348e-04 0.036 0.922 Error 84304.687 381 221.272 ========================================================================================= Total 87448.726 383 POSTHOC MULTIPLE COMPARISONS Tukey HSD: Table of q-statistics AA AB LAB ============================== AA 0 2.749 ns 5.330 ** AB 0 2.581 ns LAB 0 ============================== + p < .10 (q-critical[3, 381] = 2.91125483514) * p < .05 (q-critical[3, 381] = 3.32766157576) ** p < .01 (q-critical[3, 381] = 4.14515568451)""" df = DataFrame() df.read_tbl('data/suppression~subjectXgroupXageXcycleXphase.csv') D = df.anova1way('SUPPRESSION', 'GROUP') self.assertEqual(str(D), R)
def test2(self): R="""Anova: Single Factor on SUPPRESSION SUMMARY Groups Count Sum Average Variance ============================================== AA 128 2048 16 148.792 AB 128 2510.600 19.614 250.326 LAB 128 2945.000 23.008 264.699 O'BRIEN TEST FOR HOMOGENEITY OF VARIANCE Source of Variation SS df MS F P-value eta^2 Obs. power ============================================================================================ Treatments 1021873.960 2 510936.980 5.229 0.006 0.027 0.823 Error 37227154.824 381 97709.068 ============================================================================================ Total 38249028.783 383 ANOVA Source of Variation SS df MS F P-value eta^2 Obs. power ========================================================================================= Treatments 3144.039 2 1572.020 7.104 9.348e-04 0.036 0.922 Error 84304.687 381 221.272 ========================================================================================= Total 87448.726 383 POSTHOC MULTIPLE COMPARISONS Tukey HSD: Table of q-statistics AA AB LAB ============================== AA 0 2.749 ns 5.330 ** AB 0 2.581 ns LAB 0 ============================== + p < .10 (q-critical[3, 381] = 2.91125483514) * p < .05 (q-critical[3, 381] = 3.32766157576) ** p < .01 (q-critical[3, 381] = 4.14515568451)""" df = DataFrame() df.read_tbl('data/suppression~subjectXgroupXageXcycleXphase.csv') D=df.anova1way('SUPPRESSION', 'GROUP') self.assertEqual(str(D),R)
def test2(self): R="""Anova: Single Factor on SUPPRESSION SUMMARY Groups Count Sum Average Variance ============================================== AA 128 2048 16 148.792 AB 128 2510.600 19.614 250.326 LAB 128 2945.000 23.008 264.699 ANOVA Source of SS df MS F P-value Variation =========================================================== Treatments 3144.039 2 1572.020 7.104 9.348e-04 Error 84304.687 381 221.272 =========================================================== Total 87448.726 383 """ df = DataFrame() df.read_tbl('suppression~subjectXgroupXageXcycleXphase.csv') aov=df.anova1way('SUPPRESSION','GROUP') self.assertEqual(str(aov),R)
# instantiate DataFrame object to hold data df = DataFrame() # inherents a dict # put data into a DataFrame object df['data'] = data1 + data2 # build dummy code column df['conditions'] = ['A'] * len(data1) + ['B'] * len(data2) # visually verify data in DataFrame print(df) # run 1 way analysis of variance # returns another dict-like object aov = df.anova1way('data', 'conditions') # print anova results print(aov) # this is just to show the data in the aov object print(aov.keys()) # calculate omega-squared aov['omega-sq'] = (aov['ssbn'] - aov['dfbn']*aov['mswn']) / \ (aov['ssbn'] + aov['sswn'] + aov['mswn']) # you can access the results this way print(aov['omega-sq']) print(aov['f']) print(aov['p'])
''' elif (types == "wanara" or types == "jatayu"): group = "other" ''' else: group = "other" csv += "\n%s,%s,%s" % (counter, number, group) counter += 1; with open("../data/" + measurement +"_zerocrossings_groups.csv", "w") as file: file.write(csv.decode('utf-8').encode('utf-8')) print "File created" datafile="../data/" + measurement +"_zerocrossings_groups.csv" data = pd.read_csv(datafile) #Create a boxplot data.boxplot('crossings', by='group', figsize=(12, 8)) #plt.show() plt.savefig("../data/" + measurement + '.png', bbox_inches='tight') #ANOVA df=DataFrame() df.read_tbl(datafile) aov_pyvttbl = df.anova1way('crossings', 'group') #print aov_pyvttbl with open("../data/" + measurement +"_ANOVA.txt", "w") as file: file.write(str(aov_pyvttbl)) print "ANOVA File created"
# instantiate DataFrame object to hold data df = DataFrame() # inherents a dict # put data into a DataFrame object df['data'] = data1+data2 # build dummy code column df['conditions'] = ['A']*len(data1)+['B']*len(data2) # visually verify data in DataFrame print(df) # run 1 way analysis of variance # returns another dict-like object aov = df.anova1way('data', 'conditions') # print anova results print(aov) # this is just to show the data in the aov object print(aov.keys()) # calculate omega-squared aov['omega-sq'] = (aov['ssbn'] - aov['dfbn']*aov['mswn']) / \ (aov['ssbn'] + aov['sswn'] + aov['mswn']) # you can access the results this way print(aov['omega-sq']) print(aov['f']) print(aov['p'])
#!C:\python27\python from pyvttbl import DataFrame datafile = "C:\\Users\\radhapavan\\Desktop\\Alex\\anova.csv" df = DataFrame() df.read_tbl(datafile) aov_pyvttbl = df.anova1way('deal_probability', 'parent_category_name') print aov_pyvttbl
import pandas as pd datafile = "PlantGrowth.csv" data = pd.read_csv(datafile) #Create a boxplot data.boxplot('weight', by='group', figsize=(12, 8)) ctrl = data['weight'][data.group == 'ctrl'] grps = pd.unique(data.group.values) d_data = {grp:data['weight'][data.group == grp] \ for grp in pd.unique(data.group.values)} k = len(pd.unique(data.group)) # number of conditions N = len(data.values) # conditions times participants n = data.groupby('group').size()[0] #Participants in each condition from pyvttbl import DataFrame df = DataFrame() df.read_tbl(datafile) aov_pyvttbl = df.anova1way('weight', 'group') print(aov_pyvttbl)