python3調(diào)用R的示例代碼
由于工作需要,在做最優(yōu)分箱的時(shí)候,始終寫不出來高效的代碼,所以就找到了R語言中的最優(yōu)分箱的包,這個(gè)時(shí)候考慮到了在python中調(diào)用R語言,完美結(jié)合。在國內(nèi)的中文網(wǎng)站搜了半天,搭建環(huán)境的時(shí)候一直出現(xiàn)” R_user not defined”這個(gè)錯(cuò)誤,簡直惱人,最后在Stack Overflow網(wǎng)站上找打了解決辦法。
我的環(huán)境是:win7 ;
使用anaconda3 ;
(一)首先你要有個(gè)anaconda包;
這個(gè)就不多說了。
(二)你要有個(gè)R語言的軟件
本人使用的微軟開發(fā)的這個(gè)。當(dāng)然你使用R官網(wǎng)的R語言軟件,或者你使用RStudio問題都不大。
https://mran.revolutionanalytics.com/download
設(shè)置完成R與的環(huán)境變量
1.以后將R目錄添加至path環(huán)境變量
path:D:\R\microsoft-r-open-3.4.2\bin\x64;
2. 將R.dll添加至path環(huán)境變量
path:D:\R\microsoft-r-open-3.4.2\bin\x64\R.dll;
(三)根據(jù)小伙伴的經(jīng)驗(yàn)下載rpy2
要去非官方的地方下載一個(gè)whl文件。
http://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2
請認(rèn)準(zhǔn)python的版本和64位的下載,下載以后,安裝rpy2.whl , 把它放在D:\Anaconda3\Anaconda3\Lib\site-packages下面,反正就是你的anaconda的site-packages下面。
cmd中命令行,然后進(jìn)入到剛剛那個(gè)路徑,
C:\Users\Administrator>D:
D:\>cd D:\Anaconda3\Anaconda3\Lib\site-packa
D:\Anaconda3\Anaconda3\Lib\site-packages>pip install rpy2-2.8.6-cp36-cp36m-win_amd64.whl
最后會(huì)顯示successful,你就成功啦;
(四)配置環(huán)境測試R與的代碼是否可以運(yùn)行
打開你的python,然后按照你的情況,敲上這些代碼,試一試。
In [1]: import os In [2]: os.environ['R_HOME'] = 'D:\R\microsoft-r-open-3.4.2' In [3]: os.environ['R_USER'] = 'D:\Anaconda3\Anaconda3\Lib\site-packages\rpy2' In [4]: import rpy2.robjects as robjects In [5]: 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) ...: ''') Out[5]: R object with classes: ('numeric',) mapped to: <FloatVector - Python:0x000000000B06FD88 / R:0x000000000EFE65B8> [18.849556]
(五)調(diào)用R的包
我們一般使用python來調(diào)用R語言,一般要去用python里面某個(gè)沒有的特殊包之類的。所以現(xiàn)在我來調(diào)用smbinning包。smbinning包是數(shù)據(jù)分箱的時(shí)候能實(shí)現(xiàn)最優(yōu)分段的一個(gè)包。
In [6]: from rpy2.robjects.packages import importr In [7]: smbinning = importr('smbinning')
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python使用pycharm環(huán)境調(diào)用opencv庫
- 利用Hyperic調(diào)用Python實(shí)現(xiàn)進(jìn)程守護(hù)
- Python使用cx_Oracle調(diào)用Oracle存儲(chǔ)過程的方法示例
- Python如何通過subprocess調(diào)用adb命令詳解
- Python調(diào)用ctypes使用C函數(shù)printf的方法
- Python基于QRCode實(shí)現(xiàn)生成二維碼的方法【下載,安裝,調(diào)用等】
- python網(wǎng)絡(luò)編程調(diào)用recv函數(shù)完整接收數(shù)據(jù)的三種方法
- 在Python中通過threading模塊定義和調(diào)用線程的方法
- Python實(shí)現(xiàn)類似jQuery使用中的鏈?zhǔn)秸{(diào)用的示例
相關(guān)文章
python+selenium行為鏈登錄12306(滑動(dòng)驗(yàn)證碼滑塊)
這篇文章主要介紹了python+selenium行為鏈登錄12306,使用python網(wǎng)絡(luò)爬蟲登錄12306,下面小編為大家分享一段代碼,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-02-02selenium+python自動(dòng)化測試環(huán)境搭建步驟
在本文中小編給大家分享了關(guān)于selenium+python自動(dòng)化測試環(huán)境搭建的相關(guān)步驟以及知識(shí)點(diǎn)內(nèi)容,需要的朋友們參考學(xué)習(xí)下。2019-06-06查看django執(zhí)行的sql語句及消耗時(shí)間的兩種方法
今天小編就為大家分享一篇查看django執(zhí)行的sql語句及消耗時(shí)間的兩種方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05Windows下實(shí)現(xiàn)將Pascal VOC轉(zhuǎn)化為TFRecords
今天小編就為大家分享一篇Windows下實(shí)現(xiàn)將Pascal VOC轉(zhuǎn)化為TFRecords,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02探索Python?Furl高性能URL構(gòu)建解析和操作功能實(shí)例
本文將提供關(guān)于Python?Furl的全面指南,包括安裝和配置、基本概念、URL解析、URL構(gòu)建、查詢參數(shù)操作、片段處理、實(shí)際應(yīng)用場景以及豐富的示例代碼2024-01-01Python3開發(fā)環(huán)境搭建詳細(xì)教程
這篇文章主要介紹了Python3開發(fā)環(huán)境搭建詳細(xì)教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06