Exemplo n.º 1
0
 def test_linear_mixed_effects_taxa(self):
     linear_mixed_effects(
         output_dir=self.temp_dir.name, table=self.table_ecam_fp,
         metadata=self.md_ecam_fp, state_column='month',
         group_categories='delivery,diet,antiexposedall',
         individual_id_column='studyid',
         metric='e2c3ff4f647112723741aa72087f1bfa')
Exemplo n.º 2
0
 def test_linear_mixed_effects_singular_matrix_error(self):
     with self.assertRaisesRegex(ValueError, "singular matrix error"):
         linear_mixed_effects(
             output_dir=self.temp_dir.name, table=None,
             metadata=self.md_ecam_fp, state_column='month',
             group_categories='diet,diet_3',
             individual_id_column='studyid', metric='observed_otus')
Exemplo n.º 3
0
 def test_linear_mixed_effects_missing_metric(self):
     with self.assertRaisesRegex(
             ValueError, 'Must specify either a metric or a formula'):
         linear_mixed_effects(
             output_dir=self.temp_dir.name, table=None,
             metadata=self.md_ecam_fp, state_column='month',
             individual_id_column='studyid')
Exemplo n.º 4
0
 def test_linear_mixed_effects_dodge_patsy_error_ix0_is_digit(self):
     linear_mixed_effects(
         output_dir=self.temp_dir.name, table=self.table_ecam_fp,
         metadata=self.md_ecam_fp, state_column='month',
         group_columns='delivery',
         individual_id_column='studyid',
         metric='74923f4bbde849e27fc4eda25d757e2a')
Exemplo n.º 5
0
 def test_linear_mixed_effects(self):
     linear_mixed_effects(output_dir=self.temp_dir.name,
                          table=None,
                          metadata=self.md_ecam_fp,
                          state_column='month',
                          group_categories='delivery,diet,antiexposedall',
                          individual_id_column='studyid',
                          metric='observed_otus')
Exemplo n.º 6
0
 def test_linear_mixed_effects_formula_missing_tilde(self):
     with self.assertRaisesRegex(ValueError,
                                 'metric ~ independent'):
         linear_mixed_effects(
             output_dir=self.temp_dir.name, table=None,
             metadata=self.md_ecam_fp, state_column='month',
             individual_id_column='studyid',
             formula='delivery * diet * antiexposedall')
Exemplo n.º 7
0
 def test_linear_mixed_effects_formula_missing_state_column(self):
     with self.assertRaisesRegex(ValueError,
                                 'must contain the "state_column"'):
         linear_mixed_effects(
             output_dir=self.temp_dir.name, table=None,
             metadata=self.md_ecam_fp, state_column='month',
             individual_id_column='studyid',
             formula='observed_otus ~ delivery * diet * antiexposedall')
Exemplo n.º 8
0
 def test_linear_mixed_effects_dodge_patsy_error_spacey_metrics(self):
     peanuts_ugly_md = qiime2.Metadata(
         self.md_ecam_fp.to_dataframe().rename(
             columns={'observed_otus': 'observed otus'}))
     linear_mixed_effects(
         output_dir=self.temp_dir.name,
         metadata=peanuts_ugly_md, state_column='month',
         group_columns='delivery',
         individual_id_column='studyid',
         metric='observed otus')
Exemplo n.º 9
0
 def test_linear_mixed_effects_no_group_categories(self):
     linear_mixed_effects(
         output_dir=self.temp_dir.name, table=None,
         metadata=self.md_ecam_fp, state_column='month',
         individual_id_column='studyid', metric='observed_otus')
     obs = pd.read_csv(
         os.path.join(self.temp_dir.name, 'model_results.tsv'),
         sep='\t', index_col=0)
     exp = pd.read_csv(
         self.get_data_path('linear_mixed_effects_no_group_categories.tsv'),
         sep='\t', index_col=0)
     pdt.assert_frame_equal(obs, exp)
Exemplo n.º 10
0
 def test_linear_mixed_effects_interaction_depth_operator(self):
     formula = 'observed_otus~(month+delivery+diet)**2'
     linear_mixed_effects(
         output_dir=self.temp_dir.name, table=None,
         metadata=self.md_ecam_fp, state_column='month',
         individual_id_column='studyid', formula=formula)
     obs = pd.read_csv(
         os.path.join(self.temp_dir.name, 'model_results.tsv'),
         sep='\t', index_col=0)
     exp = pd.read_csv(
         self.get_data_path('linear_mixed_effects_formula_depth.tsv'),
         sep='\t', index_col=0)
     pdt.assert_frame_equal(obs, exp)
Exemplo n.º 11
0
 def test_linear_mixed_effects_complex_formula(self):
     formula = 'observed_otus~month*delivery+diet+month:diet-month:delivery'
     linear_mixed_effects(
         output_dir=self.temp_dir.name, table=None,
         metadata=self.md_ecam_fp, state_column='month',
         individual_id_column='studyid', formula=formula)
     obs = pd.read_csv(
         os.path.join(self.temp_dir.name, 'model_results.tsv'),
         sep='\t', index_col=0)
     exp = pd.read_csv(
         self.get_data_path('linear_mixed_effects_complex_formula.tsv'),
         sep='\t', index_col=0)
     pdt.assert_frame_equal(obs, exp)
Exemplo n.º 12
0
 def test_linear_mixed_effects_taxa(self):
     linear_mixed_effects(
         output_dir=self.temp_dir.name, table=self.table_ecam_fp,
         metadata=self.md_ecam_fp, state_column='month',
         group_categories='delivery,diet,antiexposedall',
         individual_id_column='studyid',
         metric='e2c3ff4f647112723741aa72087f1bfa')
     obs = pd.read_csv(
         os.path.join(self.temp_dir.name, 'model_results.tsv'),
         sep='\t', index_col=0)
     exp = pd.read_csv(
         self.get_data_path('linear_mixed_effects_taxa.tsv'),
         sep='\t', index_col=0)
     pdt.assert_frame_equal(obs, exp)
Exemplo n.º 13
0
 def test_linear_mixed_effects_with_multiple_random_effects(self):
     linear_mixed_effects(
         output_dir=self.temp_dir.name, table=None,
         metadata=self.md_ecam_fp, state_column='month',
         group_columns='delivery,diet,antiexposedall',
         random_effects='month,studyid',
         individual_id_column='studyid', metric='observed_otus')
     obs = pd.read_csv(
         os.path.join(self.temp_dir.name, 'model_results.tsv'),
         sep='\t', index_col=0)
     exp = pd.read_csv(self.get_data_path(
         'linear_mixed_effects_with_multiple_random_effects.tsv'),
         sep='\t', index_col=0)
     pdt.assert_frame_equal(obs, exp)