1 介紹
該包提供了一套全面的工具井佑,可以實(shí)現(xiàn)R與python的相互切換:
從R以多種方式調(diào)用Python,包括R Markdown,獲取Python腳本,導(dǎo)入Python模塊辫继,以及在R會話中以交互方式使用Python怒见。
R和Python對象之間的轉(zhuǎn)換(例如,在R和Pandas數(shù)據(jù)框之間姑宽,或在R矩陣和NumPy數(shù)組之間)遣耍。
靈活地綁定到不同版本的Python,包括虛擬環(huán)境和Conda環(huán)境低千。
Reticulate在R中嵌入Python,實(shí)現(xiàn)無縫馏颂,高性能的互操作性示血。不僅可以在R studio中調(diào)用python,還支持指定python版本救拉,conda環(huán)境導(dǎo)入你想要的模塊實(shí)現(xiàn)R與python的合作
2 函數(shù)介紹
#加載包
library(reticulate)
#查看是否安裝python
py_available()
[1] TRUE
#查看python路徑
Sys.which("python")
"D:\\ProgramData\\Anaconda21\\python.exe"
##這里我使用的conda难审,所以指定conda中的python
#創(chuàng)建conda環(huán)境
conda_create(envname='r-reticulate',conda = "auto",packages = "python")
##envname指定創(chuàng)建環(huán)境的名稱,conda指定conda可執(zhí)行文件的路徑亿絮,packages指定要安裝或刪除的包名稱
#指定python路徑
use_python('/your path/',required = T)
#指定環(huán)境路徑
use_virtualenv("/your path/",required = T)
#安裝模塊
py_install("packages", envname = "r-reticulate", method="auto")
conda_install(envname = NULL, packages, forge = TRUE, pip = FALSE,pip_ignore_installed = TRUE, conda = "auto", python_version = NULL)
##使用conda安裝告喊,也可也使用pip參數(shù)指定pip安裝,還可以指定python版本派昧,conda環(huán)境名稱黔姜,路徑以及其他功能
#查看模塊是否安裝成功
py_module_available("packages")
##返回T or F
或者我們可以在cmd
或者Unix
終端首先建立好conda環(huán)境,一個python2一個python3互不干擾
conda create -n r-reticulate python=2/3
之后在安裝模塊時只需要調(diào)用特定的conda環(huán)境就可以進(jìn)行安裝
use_condaenv("r-reticulate")
conda_install(envname = 'r-reticulate', 'packages', forge = TRUE, pip = T)
reticulate
不僅可以方便在R中安裝并調(diào)用python模塊蒂萎,還支持交互使用python
repl_python()
##進(jìn)入python命令秆吵,可以在R studio中交互使用python
當(dāng)調(diào)用Python時,R數(shù)據(jù)類型會自動轉(zhuǎn)換為它們等效的Python類型五慈。 當(dāng)值從Python返回到R時纳寂,它們會被轉(zhuǎn)換回R類型。
數(shù)據(jù)類型互通