1. 程式人生 > >常用R語言包介紹

常用R語言包介紹

r與python差異比較大的一個地方就是,python的機器學習演算法集中程度比較高,比如sklearn,就集成了很多的演算法,而R語言更多時候需要一個包一個包去了解,比較費時費力,對於python轉過來的朋友非常不友好,抽空整理了工作中常用的R包如下:

常用檢驗函式:

基本上分佈中常見的都羅列了:


常用作圖函式包:

ggplot2:萬能,基本上excel能畫的圖它都能畫

rattle:fancyRpartPlot函式,決策樹畫圖函式

基礎包函式:barplot、pie、dotchart、hist、densityplot、boxplot、contour等等

正態檢驗:qqplot、qqline、qqnorm

連續分類迴歸模型:

stats包 lm函式,實現多元線性迴歸;glm函式,實現廣義線性迴歸;nls函式,實現非線性最小二乘迴歸;knn函式,k最近鄰演算法

rpart包 rpart函式,基於CART演算法的分類迴歸樹模型

randomForest包 randomForest函式,基於rpart演算法的整合演算法

e1071包 svm函式,支援向量機演算法

kernlab包 ksvm函式,基於核函式的支援向量機

nnet包 nnet函式,單隱藏層的神經網路演算法

neuralnet包 neuralnet函式,多隱藏層多節點的神經網路演算法

RSNNS包 mlp函式,多層感知器神經網路;rbf函式,基於徑向基函式的神經網路

離散分類迴歸模型:

stats包 glm函式,實現Logistic迴歸,選擇logit連線函式

kknn包 kknn函式,加權的k最近鄰演算法

rpart包 rpart函式,基於CART演算法的分類迴歸樹模型

adabag包bagging函式,基於rpart演算法的整合演算法;boosting函式,基於rpart演算法的整合演算法

party包ctree函式,條件分類樹演算法

RWeka包OneR函式,一維的學習規則演算法;JPip函式,多維的學習規則演算法;J48函式,基於C4.5演算法的決策樹

C50包C5.0函式,基於C5.0演算法的決策樹

e1071包naiveBayes函式,貝葉斯分類器演算法

klaR包NaiveBayes函式,貝葉斯分類器算分

MASS包lda函式,線性判別分析;qda函式,二次判別分析

聚類:Nbclust包Nbclust函式可以確定應該聚為幾類

stats包kmeans函式,k均值聚類演算法;hclust函式,層次聚類演算法

cluster包pam函式,k中心點聚類演算法

fpc包dbscan函式,密度聚類演算法;kmeansruns函式,相比於kmeans函式更加穩定,而且還可以估計聚為幾類;pamk函式,相比於pam函式,可以給出參考的聚類個數

mclust包Mclust函式,期望最大(EM)演算法

關聯規則:arules包apriori函式

Apriori關聯規則演算法 

recommenderlab協調過濾

DRM:重複關聯

ECLAT演算法: 採用等價類,RST深度搜索和集合的交集: eclat 

降維演算法:

psych包prcomp函式、factanal函式

時序分析:

ts時序構建函式

timsac包時序分析

holtwinter包時序分析

decomp、tsr、stl成分分解

zoo 時間序列資料的預處理

統計及預處理: 

常用的包 Base R, nlme 

aov, anova 方差分析

density 密度分析 

t.test, prop.test, anova, aov:假設檢驗

rootSolve非線性求根

reshape2資料預處理

plyr及dplyr資料預處理大殺器

最後剩下常用的就是讀入和寫出了:

RODBC 連線ODBC資料庫介面

jsonlite 讀寫json檔案

yaml 讀寫yaml檔案

rmakdown寫文件

knitr自動文件生成

一般業務中使用比較多的就是上面這些了,當然R裡面有很多冷門的包,也很好用滴~


如果有任何演算法、程式碼疑問都歡迎通過公眾號發訊息給我哦,已經給你們準備好資料大禮包了