Acceso a funciones con un punto en su nombre (por ejemplo, "as.vector") usando rpy2

StackOverflow https://stackoverflow.com/questions/6032060

  •  14-11-2019
  •  | 
  •  

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?

¿Fue útil?

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()'

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top