Pasando data.frames de R como tablas de pandas en Python usando rPython
Un usuario de rPython
, David González Knowles, me ha facilitado su código para pasar una tabla, iris
en este caso, de R a una tabla de pandas en Python usando mi paquete.
En R hay tablas de serie. En Python no. La librería pandas de Python implementa algo parecido a los data.frames
. Solo que nada garantiza que un usuario de Python la tenga instalada. Por eso no hay un formato de destino claro y universal para las tablas de R a través de rPython. Y por eso, en Python, si se tiene pandas
instalado, el usuario tiene que hacer algo, lo siguiente:
library(rPython)
python.assign('iris', iris)
python.exec("print type(iris)")
# <type 'dict'>
python.exec("import pandas as pd")
python.exec("pd_iris = pd.DataFrame.from_dict(iris,orient='columns')")
python.exec("print type(pd_iris)")
#<class 'pandas.core.frame.DataFrame'>
Sería posible (y lo comento por si alguien recoge el guante) desarrollar una extensión (o continuación) de rPython
que asumiese que el Python de destino tiene pandas
instalado y que incluyese operaciones como la indicada más arriba para facilitar la vida a los usuarios.