成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

同一個項目中讓R和Python無縫工作的五種方法

開發 后端
最近,我同時使用R和Python進行了更多的項目。 對我而言,使用最佳工具來完成工作變得越來越重要,而不受單一語言的束縛。

Python在某些方面做得最好,R在某些方面做得最好,因此,如果我們在需要的時候可以同時使用這兩種方法,那么我們就可以發揮出最好的性能。 在最近的示例中,我想創建一個Shiny應用程序來生成參數化的Powerpoint文檔,這個應用我是用R的tidyverse對我的數據進行編碼處理,使用Python編寫了Powerpoint編輯代碼,因為這在python-pptx包中很容易。

[[391920]]

現在,在RStudio IDE中使用兩種語言進行操作確實非常容易。 為此,您需要在R中安裝和加載網狀軟件包。您可以執行以下五項操作,以使您在同一項目中獲得兩種語言的無縫編碼體驗:

在項目啟動時定義Python環境

為避免與使用錯誤的Python解釋器相關問題,首先需要在項目啟動時通過創建.Rprofile文件并將其保存在項目目錄中來定義Python環境。 您的.Rprofile包含將在您的項目啟動時執行的代碼。 我通常在.Rprofile中有這兩行代碼:

 

  1. Sys.setenv(RETICULATE_PYTHON = "<path>")  
  2. print(paste("Python environment forced to", Sys.getenv("RETICULATE_PYTHON"))) 

 

其中,是您要使用的Python環境中Python可執行文件的路徑。 第一個命令將其設置為您的python可執行文件。 第二個命令將打印此確認,該確認將在您每次啟動項目時顯示在您的終端中。 這是我啟動一個項目時終端的外觀:

 

 

使用repl_python()在Python中實時編碼

在項目中如果需要測試Python和R可以使用 Reticulate軟件包中的repl_python()函數將R終端切換到Python終端,以便您可以在Python中進行實時編碼。 您可以使用exit命令退出它,然后在R中編寫更多代碼,然后再回到Python終端,它仍然會記住上一個會話中的所有對象,這意味著它很容易在各種語言之間無縫地移動。 這是一個簡單的示例:

 

 

在Python和R之間交換對象

可以在Python和R之間交換任何相當標準的數據對象,例如值,列表和dataframes 。要在Python中使用名為myrobject的R對象,可以使用r.myrobject進行調用。 要在R中使用名為mypythonobject的Python對象,可以使用py $ mypythonobject進行調用。 這是另一個實際的操作示例,其中我將R中的themtcars數據集引入了Python:

 

 

數據對象將根據不同的語言轉換為它們的等效結構。 例如,R中的列表將被翻譯成Python中的字典:

 

 

將Python函數轉換為R函數

當同時使用這兩種語言時,你最終會需要將Python代碼作為一個R的函數來執行.如果將編寫的Python函數寫到一個文件中,然后R中調用source_python(),那么這個文件可以以源代碼文件的形式使用。下面是一個簡單的例子,我寫了一個Python函數將兩個數字相加,并將其保存在文件sumof.py中:

 

  1. def sumof(a, b):  
  2. return a+b 

 

現在,我可以獲取sumof.py并將其變成和R函數:

 

 

創建包含R和Python代碼的MD文檔

正確設置.Rprofile后,您可以創建具有兩種語言代碼塊的文檔,并且可以在代碼塊之間交換對象。 以下是一些簡單的R Markdown代碼,用以說明這一點:

 

 

這會產生以下輸出:

 

 

同樣,你可以用一種語言編寫函數,在另一種語言中輕松使用它們:

 

 

對我來說,這個功能讓我的工作中有了更多的可能。我希望這些技巧能夠幫助您開始探索Python和R所提供的最佳功能。

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2009-06-09 12:38:12

NetBeanseclipse

2019-08-20 10:24:39

HTTPSSSHLinux

2016-12-15 08:54:52

線程sessionopenSession

2021-12-21 09:50:43

戴爾混合辦公

2009-04-07 10:52:00

職場工作方法

2024-11-29 09:41:17

2010-11-11 14:29:27

Ubuntu工作區

2024-06-07 09:06:36

2022-12-07 11:24:51

首席信息官IT

2009-07-03 17:48:24

JSP頁面跳轉

2025-04-25 08:55:00

Pod運維

2025-01-20 10:22:23

2016-12-20 13:55:52

2020-08-06 13:19:10

IBM多云管理

2020-12-03 14:40:10

云管理

2014-09-05 09:37:06

開源

2011-05-18 14:10:18

敏感數據安全數據泄漏

2022-12-29 08:46:15

IT采購投資

2015-09-10 09:30:54

Java多線程同步

2020-04-02 10:45:48

多云云計算云平臺
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区三区在线 | 中文字幕免费视频 | 亚洲国产精品va在线看黑人 | 一级黄色毛片子 | 羞羞视频在线网站观看 | 久久久精品一区二区三区 | 亚洲国产精品va在线看黑人 | 国产乱码精品一区二区三区中文 | 懂色av色香蕉一区二区蜜桃 | 国产精品成人一区二区 | 一a级片 | 免费观看的黄色网址 | 日韩在线看片 | 国产情侣久久 | 亚洲精品成人网 | 免费视频一区二区 | 国产区一区二区三区 | 中文字幕在线观看成人 | 性一交一乱一伦视频免费观看 | 日本精品视频一区二区三区四区 | 日韩在线中文字幕 | 自拍偷拍欧美 | 亚洲三级av | 日韩av成人在线观看 | 久久亚洲春色中文字幕久久久 | 91精品国产91久久久久久吃药 | 欧美一级大片免费看 | 国产精品18久久久久久久 | 久久九九99 | 国产色网站| 国产成都精品91一区二区三 | av免费看片| 亚洲精品电影在线观看 | 国产精品一区二区三 | 在线看免费 | 999免费观看视频 | 久久夜视频 | 久久99精品久久久久久 | 皇色视频在线 | 成人国产精品免费观看 | 一区二区三区高清 |