R語言有多強大?十個你不知道的功能

2021-02-26    分類: 網(wǎng)站建設

大數(shù)據(jù)文摘出品

編譯:鄔亮

有些業(yè)界從業(yè)人士對R語言的價值并不認可,他們認為R語言只針對統(tǒng)計分析。

R語言的確提供了很全面的統(tǒng)計分析的軟件包,比如CRAN,Bioconductor,Neuroconductor,以及ROpenSci;并且提供了優(yōu)秀的包管理功能。

但在與計算機領域朋友的溝通中,R語言其實已經(jīng)成長為一種多功能的編程語言,它的功能遠不限于數(shù)據(jù)分析而已。但是,R語言的很多優(yōu)秀特性并不為R語言社區(qū)以外的人所熟知。

在本文中,我將給大家介紹那些不為人知,卻又好用到難以置信的R語言功能。

1. R的標記語言可以制作可重復生成的Word和Powerpoint文檔

R語言中的rmarkdown包可以制作可重復生成的Word文檔和Powerpoint幻燈片,而這只需要改變一行YAML的代碼。

2. 組建和運行一個可交互的網(wǎng)絡應用只需要幾行代碼

幾行R代碼就可以生成一個可交互的網(wǎng)絡應用。比方說如果使用R語言的flexdashboard包, 你只需要36行代碼,就可以生成一個可交互的動態(tài)報表,來探索你的BMI指數(shù)與全國健康營養(yǎng)檢查樣本結果的關聯(lián)。

3. 幾行甚至一行R代碼就可以支持網(wǎng)絡應用的運行

另外一個很酷的功能是,通過rsconnect包,R語言還可以僅用一兩行代碼就支持網(wǎng)絡應用的運行。這些應用既可以通過自己的服務器來支持,也可以用shinyapps.io這種云服務器

4. 通過使用R語言的dplyr/dbplyr,幾乎各種數(shù)據(jù)庫都可以連接

使用dbplyr包,用R語言連接各種數(shù)據(jù)庫,無論是本地的還是遠程的,都非常方便。這個功能使R語言用戶可以不用擔心底層的數(shù)據(jù)庫,而獨立地從主流數(shù)據(jù)庫中抽取數(shù)據(jù)。R語言的bigrquery包還可以直接利用BigQuery和其他大規(guī)模數(shù)據(jù)存儲。

5. 本地或多個不同的數(shù)據(jù)存儲,在R語言里可以利用相同的dblyr語法來操作

當你學會如何利用dplyr來轉換數(shù)據(jù),本地和遠程的數(shù)據(jù)庫、數(shù)據(jù)存儲都可以利用相同的代碼來操作。這個功能簡化了也統(tǒng)一化了操作多個數(shù)據(jù)庫和數(shù)據(jù)語言的過程。

6. 你可以用Keras和Tensorflow訓練深度學習模型

使用keras包或TensorFlow接口,你可以利用R語言來學習預訓練或者開發(fā)全新的深度學習模型。

7. R語言可以編寫和支持應用程序接口(API)

Plumbr包可以把R函數(shù)直接轉換成網(wǎng)絡應用接口(API),并能很方便的集成到下游應用中去。如果你還安裝有Rstuodio Connect,這些函數(shù)可以像網(wǎng)絡應用一樣輕松地被部署。

8. 你可以使用R語言來生成電子游戲的界面

不僅是網(wǎng)絡應用,R語言甚至可以生成電子游戲的界面。nessy 包可以幫助你生成并部署NES風格的Shiny應用。

9. 你可以直接通過R語言調用Spark集群來分析數(shù)據(jù)

你想用大規(guī)模數(shù)據(jù)訓練又大又復雜的機器學習模型么?R語言的sparklyr包幫助你在單機或者大型的Spark集群上直接完成這項任務。

10. 你可以在R語言中以交互的方式學習R

R語言的swirl包可以用來生成可交互的R語言學習教程。

本文介紹了十個R語言中的功能,這些當然不是R語言全部的優(yōu)秀特征。比如你還可以連接到AWS Polly來生成語音合成軟件,或者用R語言生成能夠回應語音命令的Shiny應用,甚至編寫深度學習的軟件來利用加速度數(shù)據(jù)去判斷哈利波特的法術。R語言已經(jīng)不單單是一門只能用來做數(shù)據(jù)分析的編程語言(雖然它在這方面超強!),對R語言的掌握能夠為你打開一扇開發(fā)實用和好玩應用的大門。

當前標題:R語言有多強大?十個你不知道的功能
標題路徑:http://muchs.cn/news/103046.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作建站公司、App設計品牌網(wǎng)站建設、網(wǎng)站改版、品牌網(wǎng)站設計

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設