J'essaye d'installer rpy2 sur mon ordinateur, mais je n'ai pas pu le faire.
J'ai téléchargé le paquet source et j'ai essayé d'installer Rpy2 (rpy2-2.3.2) à l'aide de la commande python setup.py install
. Voici le résultat:
running install
running build
running build_py
running build_ext
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config --ldflags
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config --cppflags
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config LAPACK_LIBS
returned an empty string.
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config BLAS_LIBS
returned an empty string.
Configuration for R as a library:
include_dirs: ('C:/PROGRA~1/R/R-215~1.2/include/i386', 'C:/PROGRA~1/R/R-215~1.2/include')
libraries: ('R',)
library_dirs: ('C:/PROGRA~1/R/R-215~1.2/bin/i386',)
extra_link_args: ()
# OSX-specific (included in extra_link_args)
framework_dirs: ()
framework: ()
building 'rpy2.rinterface._rinterface' extension
creating build\temp.win32-2.7
creating build\temp.win32-2.7\Release
creating build\temp.win32-2.7\Release\rpy
creating build\temp.win32-2.7\Release\rpy\rinterface
C:\Rtools\gcc-4.6.3\bin\gcc.exe -mcygwin -mdll -O -Wall -DWin32=1 -I.\rpy\rinterface -IC:\Python27\include -IC:\Python27\PC -IC:/PROGRA~1/R/R-215~1.2/include/i386 -IC:/PROGRA~1/R/R-215~1.2/include -c .\rpy\rinterface\_interface.c -o build\temp.win32-2.7\Release\.\rpy\rinterface\_rinterface.o
cc1.exe: error: unrecognized command line option '-mcygwin'
error: command 'gcc' failed with exit status 1
J'ai aussi essayé avec build install
et easy_install
sans succès. J'ai R 2.15.2, Python 2.7.2 et Windows 7 (32 bits).
Qu'est-ce que je fais mal?
PS.Si je colle cette commande, le résultat est:
cygwin avertissement:
MS-DOS style path detected C:\PROGRA~1\R\R-215~1.2\bin\config.sh
Preferred POSIX equivalent is: /cygdrive/c/PROGRA~1/R/R-215~1.2/bin/config.sh
CYGWIN environment variable option "nodosfilewarning" turns off this warning.
Consult the user's guide for more details about POSIX paths:
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
-LC: /PROGRA~1/R/R-215~1.2/bin/i386 -lR
D'ACCORD. De l'expérience précédente, j'ai trouvé qu'il n'y avait pas beaucoup d'instructions sur la façon d'installer rpy2 sur Windows. Je comprends que ce n'est pas officiellement supporté mais ce n'est vraiment pas si difficile. En quelques étapes, je montrerai ce que j'ai fait et peut-être que d'autres pourront suivre.
Ces instructions ne fonctionneront probablement que pour Python 2.7+ et R 3.2+, mais probablement pour R 3.0+. Je mets les chemins que j'ai utilisés sur mon système. Assurez-vous de modifier les chemins en conséquence:
Tout d’abord, assurez-vous que toutes les installations précédentes de rpy2 sont UNINSTALLED avant d’essayer ces étapes (et bien entendu avec R 3.2+ avant l’installation).
pip install [put .whl filename here]
(dans la ligne de commande) à partir du répertoire où le fichier a été téléchargé.C:\Program Files\R\R-3.2.0\bin
à votre variable d'environnement PATHR_HOME
avec une valeur similaire à: C:\Program Files\R\R-3.2.0
R_USER
avec votre nom d'utilisateurR_LIBS_USER
avec un chemin d'accès au dossier où les packages R externes sont/seront installés.C'est tout. Ouvrez une invite de commande et entrez la commande R
. Cela devrait démarrer une session R et afficher des informations sur la version.
Ouvrez maintenant python et lancez cette ligne pour voir si les choses se sont bien passées ou non:
import rpy2.robjects as robjects
Espérons que cela aide.
Je viens d'installer avec succès rpy2 sur Windows 8.1 64 bits avec le programme d'installation binaire à partir de http://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2 . Il est généralement beaucoup plus facile de télécharger un fichier binaire plutôt que d'essayer de compiler un paquet sous Windows.
En outre, vous devez définir la variable d'environnement R_HOME
(dans mon cas, sur C:\Program Files\R\R-3.1.1
) avant d'installer le fichier binaire rpy2. Sinon, vous obtenez une erreur RuntimeError: R_HOME not defined.
lorsque vous essayez d'importer rpy2. (merci à R_HOME Erreur avec rpy2 )
Enfin, veillez à utiliser %load_ext rpy2.ipython
au lieu de %load_ext rmagic
si vous souhaitez l’utiliser dans IPython. C'est l'une des nouvelles fonctionnalités de la version 2.4.0 de rpy2.
De plus, je n'ai généralement pas réussi à faire fonctionner Rpy2 sous Windows. Après quelques heures à bidouiller avec R2.15 et Rpy2 à partir du binaire pré-compilé 2.3.4.win-AMD64-py2.7 , j’ai suivi cette question et installé pyper au lieu. Peut-être que cela fonctionnera pour vous jusqu'à ce que le support soit là. Pour ma part, j'aimerais bien voir Rpy2 sous Windows et le cahier IPython (% load_ext rmagic), mais je ne pouvais tout simplement pas passer plus de temps avec celui-ci.
EDIT Finalement j'ai réussi à le faire fonctionner !!! Voir ci-dessous:
Je me suis cogné la tête pour que cela fonctionne et je ne l'ai toujours pas compris complètement. Ce que j'ai découvert, c'est que l'erreur
'sh' n'est pas reconnu comme une commande interne ou externe, un programme utilisable ou un fichier batch
est causée par l’absence de mingw et de Rtools (et d’autres programmes d’aide de type Unix). ( http://sourceforge.net/p/rpy/mailman/message/26549197/ )
Je suis passé cette étape en installant Rtools ( http://cran.r-project.org/bin/windows/Rtools/ ) et mingw ( http://sourceforge.net/projects/mingw-w64/ ) (Mais depuis que le projet mingw-w64 sur sourceforge.net se déplace vers mingw-w64.org, je suggère d’utiliser mingw-w64.org )
Je suis passé passé l'erreur de config R.exe CMD --ldflags mais je suis resté coincé avec
TypeError: l'objet de type 'NoneType' n'a pas de len ()
erreur. Je cherche toujours une solution !!
J'espère que cela aide quelqu'un à un moment donné.
UPDATE: Il semble donc y avoir quelques problèmes liés à l'installation. Le fichier setup.py ne parvient pas à trouver la version correcte de R et les compilateurs ont des problèmes.
Alors, comment procéder:
autour de la ligne 123 avant
retourne self._version J'ai ajouté self._version = [3, 0] pour forcer la version à être 3.0 (peut-être que quelqu'un peut résoudre ce problème mieux)
Dans le fichier unixccompiler.py, soit dans python27/lib/distutils, soit dans mon cas, C:\Users (nom_utilisateur)\AppData\Local\Continuum\Anaconda\Lib\distutils, ligne de commentaire 227
compiler = os.path.basename (sysconfig.get_config_var ("CC")) avec # (#compiler = os.path.basename (sysconfig.get_config_var ("CC")))
et ajouter une ligne
compilateur = 'gcc'
Quelques autres choses - utilisez la commande Prompt cmd pour l’installation. Utilisation
installation de compilation python.py
Installez les outils Rtools et Mingw en acceptant tous les paramètres par défaut. Dans Rtools, sélectionnez le
extra pour construire 64 bits R
et
éditer le chemin du système
C'est tout!! Je dois le faire fonctionner ..
J'espère que cela t'aides!!
Sur Anaconda, vous pouvez installer en utilisant:
conda install --channel https://conda.anaconda.org/Richarizardd rpy2
Alternativement, on peut essayer:
conda install -c r rpy2
On peut aussi se référer:
https://github.com/conda-forge/rpy2-feedstock
Je ne sais pas si quelqu'un suit toujours la discussion, mais dans tous les cas, mon but en essayant de faire fonctionner RPY2 était de pouvoir le faire fonctionner dans mes cahiers Ipython. Si quelqu'un d'autre tente de faire la même chose, je suggérerais d'utiliser IRkernel, qui s'installe facilement comme un gâteau (un gâteau bien fait). Voici les ressources pour le faire. Je l'ai utilisé et cela fonctionne comme un charme.
fondamentalement, ce que vous devez exécuter est la suivante:
install.packages(c('rzmq','repr','IRkernel','IRdisplay'),repos = c('http://irkernel.github.io/', getOption('repos')))
IRkernel::installspec()
Voici les ressources si vous rencontrez des problèmes:
https://github.com/IRkernel/IRkernel
http://blog.revolutionanalytics.com/2015/09/using-r-with-jupyter-notebooks.html
http://www.michaelpacer.com/maths/r-kernel-for-ipython-notebook
HTH
Le script d'installation setup.py
indique qu'un problème a été rencontré lors de l'exécution
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config --ldflags
Ouvrez un terminal, collez cette commande, vérifiez l’erreur.
Lorsque vous avez modifié la question avec la sortie, le problème semble être que lors de l'exécution de cette commande en tant que sous-processus de python setup.py install
, une chaîne vide est renvoyée lors de l'exécution de la commande à partir d'un terminal, il existe une sortie . sortie du terminal dans lequel cygwin est impliqué. Peut-être que c'est le problème?
Suite aux réponses ci-dessus, voici ce qui fonctionne pour moi
Système: Win 7-64, Python 3.6,
R_HOME
et R_USER
en tant que variable d'environnementR_HOME = D:\Program Files\R\R-3.4.1
R_USER = Administrator
Le nom d'utilisateur peut être obtenu par echo %username%
dans cmd
rpy2
et installez-leTéléchargez rpy2 à partir de http://www.lfd.uci.edu/~gohlke/pythonlibs/
Vérifiez son chemin et installez-le dans cmd comme pip install rpy2-2.8.6-cp36-cp36m-win_AMD64.whl
import rpy2.robjects as robjects
# test : evaluating R code
robjects.r('''
# create a function `f`
f <- function(r, verbose=FALSE) {
if (verbose) {
cat("I am calling f().\n")
}
2 * pi * r
}
# call the function `f` with argument value 3
f(3)
''')
Découvrez cette documentation d'installation que j'ai faite à propos de ce problème. https://www.academia.edu/12178754/rpy2Install
C'est un répertoire spécifique à une configuration ArcGIS, mais rapide à porter