Limbitless Universal Statistical Analysis Script
-
Load in desired .xslx or .csv sheet into ‘excel_sheets’ folder
-
Normalize data by running the command in terminal: python normalize.py excel_sheets/insertname.xlsx (or .csv)
-
This loads a new .csv file inside the excel_sheets file which will be read by the stats_runner.py script to perform statistical analysis
-
Run desired test in terminal based on the command references below inside stat_runner.py script
---------- Independent t-test ----------
python stats_runner.py excel_sheets/insertname_tidy.csv --ttest_ind --value value --group Cohort --levels 1,2
python stats_runner.py excel_sheets/insertname_tidy.csv --ttest_ind --value value --group Cohort --levels 1,2 --filter Sex=F
python stats_runner.py excel_sheets/insertname_tidy.csv --ttest_ind --equal_var --value value --group Cohort --levels 1,2
python stats_runner.py excel_sheets/insertname_tidy.csv --ttest_ind --value value --group Cohort --levels 1,2 --filter "Age>=18,Age<=20"
---------- Paired t-test ----------
python stats_runner.py excel_sheets/insertname_tidy.csv --ttest_rel --value value --subject SubjectID --condition side --levels R,L
python stats_runner.py excel_sheets/insertname_tidy.csv --ttest_rel --value value --subject SubjectID --condition side --levels R,L --filter Cohort=1
---------- One-way ANOVA ----------
python stats_runner.py excel_sheets/insertname_tidy.csv --anova1 --value value --factor trial_id
python stats_runner.py excel_sheets/insertname_tidy.csv --anova1 --value value --factor trial_id --filter Sex=F
python stats_runner.py excel_sheets/insertname_tidy.csv --anova1 --value value --factor trial_id --filter "Age>=18,Age<=20"
---------- Two-way ANOVA ----------
python stats_runner.py excel_sheets/insertname_tidy.csv --anova2 --value value --factorA Cohort --factorB side
python stats_runner.py excel_sheets/insertname_tidy.csv --anova2 --value value --factorA Cohort --factorB side --filter Sex=F
---------- Correlations ----------
python stats_runner.py excel_sheets/insertname_tidy.csv --pearson --x Sleep_hours --y value
python stats_runner.py excel_sheets/insertname_tidy.csv --spearman --x Screen_time --y value --filter Cohort=2
python stats_runner.py excel_sheets/insertname_tidy.csv --kendall --x Age --y value --filter Sex=F
python stats_runner.py excel_sheets/insertname_tidy.csv --pearson --x Sleep_hours --y value --filter "Age>=18,Age<=20"
---------- Tukey HSD ----------
python stats_runner.py excel_sheets/insertname_tidy.csv --tukey --value value --group trial_id
python stats_runner.py excel_sheets/insertname_tidy.csv --tukey --value value --group trial_id --filter Cohort=1
---------- FDR Adjustment ----------
python stats_runner.py excel_sheets/pvals.csv --fdr --pcol pval --alpha 0.05
---------- Bonus combos ----------
python stats_runner.py excel_sheets/insertname_tidy.csv --pearson --x Sleep_hours --y value --filter "Cohort=1,Sex=F,Age>=18,Age<=20"
python stats_runner.py excel_sheets/insertname_tidy.csv --anova2 --value value --factorA Cohort --factorB side --filter "Age>18"