I have a problem of namespace when trying to use function patsy.dmatrices()
with the reticulate
R package.
Here is a simple reproducible example:
patsy <- import("patsy")
# Data
dataset <- data.frame(Y=rnorm(1000,2.5,1))
# Null model
formula_null <- "I(Y-1) ~ 1"
dmat = patsy$dmatrices(formula_null, data=dataset, NA_action="drop",
return_type="dataframe")
I get the following error:
Error in py_call_impl(callable, dots$args, dots$keywords) :
AttributeError: 'NoneType' object has no attribute 'f_locals'
I think this is associated to the namespace (cf. Namespace issues when calling patsy within a function) which might be fixed by using the eval_env
argument of function dmatrices()
but I wasn't able to figure out how.
This is quite problematic when we want to use in R the Python statsmodels
package which make uses of the patsy
package for formulas.
Thanks for your help,