--ttest_feat_tables

Switch

--ttest_feat_tables

Description

Paired t-test of group_norms for all features in two feature tables with group_id as observations

Argument and Default Value

No argument. Boolean switch, default: False. Requires exactly two tables passed to -f.

Details

For each feature present in both tables, runs a paired t-test on the group_norm values across matching group_ids, reporting t, p, and Cohen's d. Only group_ids present in both tables and passing --group_freq_thresh are used as paired observations.

Known issue — you must pass a positive --group_freq_thresh. featureGetter.ttestWithOtherFG() gates its per-group frequency check behind a plain if groupFreqThresh:, so --group_freq_thresh 0 (the usual way to mean "no threshold" elsewhere in DLATK) — and simply omitting the flag, since it then defaults to None — both leave the eligible-groups set empty and the command fails with AssertionError: No groups passing frequency threshold. Verified: the same command with --group_freq_thresh 1 runs to completion and produces real {feature: {'N', 'd', 'p', 't'}} results.

Known issue — ``--csv`` is a no-op here. The code for this switch is if args.csv: #add this / #can use something similar to OG correlMatrix / pass — a stub that was never implemented. Verified: running with --csv --output_name ... produces no file at all; results only ever go to stdout via pprint(), regardless of --csv or --output_name.

Other Switches

Required Switches:

  • Two feature tables given to -f

  • --group_freq_thresh (must be a positive integer — see Known issue above)

Optional Switches:

Example Commands

dlatkInterface.py -d tester7 -t statuses_er1 -c study_code \
-f 'feat$cat_statuses_er1_cp_w$statuses_6moBB$study_code$16to16' 'feat$cat_statuses_er1_cp_w$statuses_6moAB$study_code$16to16' \
--ttest_feat_tables --group_freq_thresh 100