function call:
dmat = de.test.design_matrix(sample_description=adata.obs, formula='~1+condition+sample+chip')
Error:
TypeError Traceback (most recent call last)
in ()
----> 1 dmat = de.test.design_matrix(sample_description=adata_counts.obs, formula='~1+condition+sample+chip')
~/github_packages/diffxpy/diffxpy/testing/base.py in design_matrix(data, sample_description, formula, dmat)
1349 if dmat is None:
1350 sample_description = _parse_sample_description(data, sample_description)
-> 1351 dmat = data_utils.design_matrix(sample_description=sample_description, formula=formula)
1352
1353 return dmat
~/github_packages/batchglm/batchglm/data.py in design_matrix(sample_description, formula, as_categorical, return_type)
125 sample_description[col] = sample_description[col].astype("category")
126
--> 127 dmat = patsy.highlevel.dmatrix(formula, sample_description)
128
129 if return_type == "dataframe":
~/anaconda3/lib/python3.6/site-packages/patsy/highlevel.py in dmatrix(formula_like, data, eval_env, NA_action, return_type)
289 eval_env = EvalEnvironment.capture(eval_env, reference=1)
290 (lhs, rhs) = _do_highlevel_design(formula_like, data, eval_env,
--> 291 NA_action, return_type)
292 if lhs.shape[1] != 0:
293 raise PatsyError("encountered outcome variables for a model "
~/anaconda3/lib/python3.6/site-packages/patsy/highlevel.py in _do_highlevel_design(formula_like, data, eval_env, NA_action, return_type)
163 return iter([data])
164 design_infos = _try_incr_builders(formula_like, data_iter_maker, eval_env,
--> 165 NA_action)
166 if design_infos is not None:
167 return build_design_matrices(design_infos, data,
~/anaconda3/lib/python3.6/site-packages/patsy/highlevel.py in _try_incr_builders(formula_like, data_iter_maker, eval_env, NA_action)
68 data_iter_maker,
69 eval_env,
---> 70 NA_action)
71 else:
72 return None
~/anaconda3/lib/python3.6/site-packages/patsy/build.py in design_matrix_builders(termlists, data_iter_maker, eval_env, NA_action)
694 factor_states,
695 data_iter_maker,
--> 696 NA_action)
697 # Now we need the factor infos, which encapsulate the knowledge of
698 # how to turn any given factor into a chunk of data:
~/anaconda3/lib/python3.6/site-packages/patsy/build.py in _examine_factor_types(factors, factor_states, data_iter_maker, NA_action)
446 cat_sniffers[factor] = CategoricalSniffer(NA_action,
447 factor.origin)
--> 448 done = cat_sniffers[factor].sniff(value)
449 if done:
450 examine_needed.remove(factor)
~/anaconda3/lib/python3.6/site-packages/patsy/categorical.py in sniff(self, data)
196 # fastpath to avoid doing an item-by-item iteration over boolean
197 # arrays, as requested by #44
--> 198 if hasattr(data, "dtype") and safe_issubdtype(data.dtype, np.bool_):
199 self._level_set = set([True, False])
200 return True
~/anaconda3/lib/python3.6/site-packages/patsy/util.py in safe_issubdtype(dt1, dt2)
679 if safe_is_pandas_categorical_dtype(dt1):
680 return False
--> 681 return np.issubdtype(dt1, dt2)
682
683 def test_safe_issubdtype():
~/anaconda3/lib/python3.6/site-packages/numpy/core/numerictypes.py in issubdtype(arg1, arg2)
724 """
725 if not issubclass_(arg1, generic):
--> 726 arg1 = dtype(arg1).type
727 if not issubclass_(arg2, generic):
728 arg2_orig = arg2
TypeError: data type not understood