def test_visualization(self): res = ols(formula="x1 + x2 + x3 + x4", table=self.y, metadata=self.x) res.fit() ols_summary(self.results, res, tree=self.t2) fp = os.path.join(self.results, 'pvalues.csv') self.assertTrue(os.path.exists(fp)) fp = os.path.join(self.results, 'coefficients.csv') self.assertTrue(os.path.exists(fp)) fp = os.path.join(self.results, 'predicted.csv') self.assertTrue(os.path.exists(fp)) fp = os.path.join(self.results, 'residuals.csv') self.assertTrue(os.path.exists(fp)) index_fp = os.path.join(self.results, 'index.html') self.assertTrue(os.path.exists(index_fp)) with open(index_fp, 'r') as fh: html = fh.read() self.assertIn('<h1>Simplicial Linear Regression Summary</h1>', html) self.assertIn('<th>Coefficients</th>\n', html) self.assertIn('<th>Predicted Balances</th>\n', html) self.assertIn('<th>Residuals</th>\n', html)
def ols_regression(output_dir: str, table: pd.DataFrame, tree: skbio.TreeNode, metadata: Metadata, formula: str) -> None: res = ols(table=table, metadata=metadata._dataframe, formula=formula) res.fit() ols_summary(output_dir, res, tree)
def ols_regression(output_dir: str, table: pd.DataFrame, tree: skbio.TreeNode, metadata: Metadata, formula: str) -> None: if np.any(table.var(axis=0) == 0): message = ('Detected zero variance balances - ' 'double check your table for unobserved features.') raise UserWarning(message) res = ols(table=table, metadata=metadata.to_dataframe(), formula=formula) res.fit() ols_summary(output_dir, res, tree)