Comments (4)
Thanks very much for your answer @jjallaire! reticulate
is a great package and there are great packages in python that I would like to see similar in R. scikit-learn is one of those for me, while R has many, many, algorithms, they are not as well organized as sklearn, with great documentation and all of that. But I agree with you, managing all the hard dependencies that come with python is not a great idea!
Thanks again!
from reticulate.
I think in general R users are better off when using packages within the R ecosystem. This is mostly because CRAN works so well and as soon as you start bringing in Python packages you need to procure and manage those dependencies as well.
Traditionally there hasn't been much need for R to call Python since the depth and breadth of R packages is so strong, and because most libraries are implemented at their core in C/C++ so it's straightforward to write R and Python bindings directly against the C/C++ code. The motivation for reticulate was specifically R interfaces for deep learning / tensorflow, since in that case much of the code we need to invoke is actually written in Python rather than C/C++.
So I think R to Python bindings make sense for domains where there are no equivalent C/C++ libraries to bind to, but make less sense when we have the option of creating native R interfaces.
from reticulate.
Okay, if you do decide to write wrappers for Python packages please see the guidelines here for ensuring that your package can still pass tests on CRAN (even if Python and/or dependent packages are not available on the CRAN servers): https://github.com/rstudio/reticulate#using-in-a-package
Note that the issue of the meta-organization of algorithms is something that clearly needs work in R, and we hope to be addressing that with some other projects soon!
from reticulate.
@jjallaire I hope they look pretty with pipes and work with real big data problems (h2o/sparklyr and not just randomForest toy examples...)!
from reticulate.
Related Issues (20)
- Need to reinstall reticulate whenever I want to access arcpy HOT 4
- Timeout when calling Async python function HOT 1
- Corrupt dataframe when converting from pandas to R HOT 5
- Release reticulate 1.38.0 HOT 1
- Reticulate 1.38.0 for R 4.2.1 can install but not import numpy, ... HOT 5
- Error in reticulate::use_python(): failed to initialize requested version of Python HOT 2
- Namespace conflict with python config package HOT 1
- Python variables sourced via `reticulate::source_python()` are not contained within `py` list HOT 6
- Reticulate does not play nice with Rich progressbars HOT 1
- R Studio Global Options Conflict with `use_virtualenv()` embedded in `.onLoad()` HOT 1
- Converting a python datatype using mutate in dplyr HOT 6
- Feature request: export `conda_run2` HOT 3
- Extracting data from Google Earth Engine HOT 2
- can't use rpy2 inside reticulate-embedded python HOT 6
- Bug: Existence of system-wide version of a shared library causes `undefined symbol` error HOT 10
- Default Altair chart dimensions are not respected HOT 1
- This is not logical HOT 1
- Prompting user input HOT 5
- Reticulate can't handle large integer values: Seems to experience integer overflow when it exceeds the limit for 32-bit signed integers
- as.raw method for bytes
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from reticulate.