中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
reticulate: R interface to Python

作者:JJ Allaire

翻譯:黃小偉,先后從事游戲、社交及金融數(shù)據(jù)研究及應(yīng)用相關(guān)工作,目前就職網(wǎng)易杭州


一. 基礎(chǔ)介紹

CRAN已于2018年3月21日收錄reticulat包(1.6版本),它包含了用于Python和R之間協(xié)同操作的全套工具,在R和Rstudio中均可使用。主要包括:

1)在R中支持多種方式調(diào)用Python。包括R Markdown、加載Python腳本、導(dǎo)入Python模塊以及在R會(huì)話中交互式地使用Python。

2)實(shí)現(xiàn)R和Python對(duì)象之間的轉(zhuǎn)換(例如R和Python數(shù)據(jù)框、R矩陣與NumPy數(shù)組之間)。

3)靈活綁定到不同版本的Python,包括虛擬環(huán)境和Conda環(huán)境。

在R會(huì)話中嵌入了Python會(huì)話,從而實(shí)現(xiàn)了無縫的、高性能的互操作性。如果你是使用Python進(jìn)行某些工作的R開發(fā)人員或使用兩種語言的數(shù)據(jù)科學(xué)團(tuán)隊(duì)的成員,那么reticulate包可以極大地簡化你的工作流程!


二. 操作說明

1. reticulate包安裝

install.packages('reticulate')

library('reticulate')


2. R Markdown中應(yīng)用Python

reticulate包含一個(gè)用于R Markdown的Python引擎,具有以下功能:

1)可在R會(huì)話中嵌入的單個(gè)Python會(huì)話中,運(yùn)行Python塊。同時(shí)Python塊之間的共享變量/狀態(tài)。

2)可打印Python輸出,包括matplotlib的圖形輸出。

3)可使用py對(duì)象訪問R中Python塊中創(chuàng)建的對(duì)象。

4)使用r對(duì)象從Python中訪問在R塊中創(chuàng)建的對(duì)象。

同時(shí),內(nèi)置了許多用于Python對(duì)象類型轉(zhuǎn)換的方法,包括NumPy數(shù)組和Pandas數(shù)據(jù)框。 例如,你可以使用Pandas讀取和操作數(shù)據(jù),然后使用ggplot2輕松繪制Pandas數(shù)據(jù)框:

注釋:加載安裝reticulate時(shí),默認(rèn)情況下都會(huì)在R Markdown中啟用Python引擎


3. 加載Python模塊

可以使用函數(shù):import() 導(dǎo)入任何Python模塊并從R中調(diào)用它。例如,此代碼導(dǎo)入Python os模塊并調(diào)用函數(shù):listdir()

library(reticulate) 

os <- import('os') 

os$listdir('.')

可以通過$運(yùn)算符訪問Python模塊和類中的函數(shù)和其他數(shù)據(jù)(類似于與R列表,環(huán)境或引用類進(jìn)行交互的方式)


4. 載入Python腳本

可以使用函數(shù):source_python()獲取任何Python腳本,就像使用R腳本一樣。如果你有以下Python腳本:flights.py

import pandas

def read_flights(file):  

flights = pandas.read_csv('flights.csv')  

flights = flights[flights['dest'] == 'ORD']  

flights = flights[['carrier', 'dep_delay', 'arr_delay']] 

flights = flights.dropna()  

return flights

然后,你可以編寫腳本源代碼并按如下所示調(diào)用函數(shù):read_flights()

source_python('flights.py') 

flights <- read_flights('flights.csv')

library(ggplot2) 

ggplot(flights, aes(carrier, arr_delay)) geom_point() geom_jitter()


5. Python REPL

如果你想以交互方式使用Python,則可以調(diào)用函數(shù):repl_python(),該函數(shù)提供了嵌入在R會(huì)話中的Python REPL。 在Python REPL中創(chuàng)建的對(duì)象,可以通過reticulate導(dǎo)出py對(duì)象,并在R中進(jìn)行調(diào)用。 例如:

在Python REPL中輸入exit以返回到R提示符。同時(shí),Python代碼還可以使用r對(duì)象訪問R會(huì)話中的對(duì)象(例如r.flights)


6. 類型轉(zhuǎn)換

當(dāng)調(diào)用Python時(shí),R數(shù)據(jù)類型會(huì)自動(dòng)轉(zhuǎn)換為它們等效的Python類型。 當(dāng)值從Python返回到R時(shí),它們會(huì)被轉(zhuǎn)換回R類型。 類型轉(zhuǎn)換如下:

如果返回自定義類的Python對(duì)象,則返回該對(duì)象的R引用。


7. 更多學(xué)習(xí)

reticulate網(wǎng)站(https://rstudio.github.io/reticulate/) 包括了使用該軟件包的詳細(xì)文檔,主要包括:

1)Calling Python from R : 介紹從R訪問Python對(duì)象的各種方法以及可用于更高級(jí)的交互和轉(zhuǎn)換行為的函數(shù)。

2)R Markdown Python Engine : 提供有關(guān)在R Markdown文檔中使用Python塊的詳細(xì)信息,包括如何從R塊調(diào)用Python代碼,反之亦然。

3)Python Version Configuration Python版本配置 : 描述用于確定R會(huì)話中使用哪個(gè)版本的Python的工具。

4)Installing Python Packages : 有關(guān)從PyPI或Conda安裝Python軟件包的文檔,以及使用virtualenvs和Conda環(huán)境管理軟件包安裝的文檔。

5)Using reticulate in an R Package : 在R軟件包中使用reticulate的準(zhǔn)則和最佳實(shí)踐。

6)Arrays in R and Python : 深層次討論R和Python中數(shù)組之間的差異以及對(duì)轉(zhuǎn)換和互操作性的影響。


參考資料:

1.reticulate網(wǎng)站: https://rstudio.github.io/reticulate/

2.源碼學(xué)習(xí): https://github.com/rstudio/reticulate

3.問題反饋: https://github.com/rstudio/reticulate/issues

課程信息

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
R開發(fā)人員使用Python
數(shù)據(jù)科學(xué)Python基礎(chǔ)(附示例代碼和練習(xí)題目)
memset()和sizeof()
真香!spaCy Cython比Python快100倍.....
小伙在某知名公司的Python面試題詳解,希望對(duì)各位以后面試有幫助
python的多態(tài)與封裝
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服