rPithon vs. rPython
This article is originally published at https://statcompute.wordpress.com
Similar to rPython, the rPithon package (http://rpithon.r-forge.r-project.org) allows users to execute Python code from R and exchange the data between Python and R. However, the underlying mechanisms between these two packages are fundamentally different. Wihle rPithon communicates with Python from R through pipes, rPython accomplishes the same task with json. A major advantage of rPithon over rPython is that multiple Python processes can be started within a R session. However, rPithon is not very robust while exchanging large data objects between R and Python.
rPython Session
library(sqldf) df_in <- sqldf('select Year, Month, DayofMonth from tbl2008 limit 5000', dbname = '/home/liuwensui/Documents/data/flights.db') library(rPython) ### R DATA.FRAME TO PYTHON DICTIONARY ### python.assign('py_dict', df_in) ### PASS PYTHON DICTIONARY BACK TO R LIST r_list <- python.get('py_dict') ### CONVERT R LIST TO DATA.FRAME df_out <- data.frame(r_list) dim(df_out) # [1] 5000 3 # # real 0m0.973s # user 0m0.797s # sys 0m0.186s
rPithon Session
library(sqldf) df_in <- sqldf('select Year, Month, DayofMonth from tbl2008 limit 5000', dbname = '/home/liuwensui/Documents/data/flights.db') library(rPithon) ### R DATA.FRAME TO PYTHON DICTIONARY ### pithon.assign('py_dict', df_in) ### PASS PYTHON DICTIONARY BACK TO R LIST r_list <- pithon.get('py_dict') ### CONVERT R LIST TO DATA.FRAME df_out <- data.frame(r_list) dim(df_out) # [1] 5000 3 # # real 0m0.984s # user 0m0.771s # sys 0m0.187s
Thanks for visiting r-craft.org
This article is originally published at https://statcompute.wordpress.com
Please visit source website for post related comments.