Acceso a funciones con un punto en su nombre (por ejemplo, "as.vector") usando rpy2
Pregunta
Estoy tratando de acceder a la función "AS.Vector" de Python, usando RPY2.Digamos, por el bien de la simplicidad, que quiero hacer algo tan simple como este usando RPY2 (código R):
x <- as.vector(c(1, 2, 3))
Dado que "AS.Vector" contiene un punto en su nombre, no está disponible directamente como miembro de rpy2.robects.r
Según la documentación, RPY2 reemplaza los puntos por los subrayos para los parámetros de la función con nombre, pero no parece funcionar para el nombre de la función en sí.Lo intenté, por ejemplo."as_vector", "asvector" en vano.
¿Alguna idea?
Solución
Get a reference to the function using the rpy2.robjects.r interface.
So, you could do something like:
as_vector = robjects.r("as.vector")
vect = as_vector(r_vect)
Otros consejos
According to the documentation, rpy2 does not replace dots by underscores when using 'rpy2.robjects.r'.
You may want to consider the use of 'importr()'