Python 和 R 数据分析/挖掘工具互查

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 和 R 数据分析/挖掘工具互查相关的知识,希望对你有一定的参考价值。

 

如果大家已经熟悉python和R的模块/包载入方式,那下面的表查找起来相对方便。python在下表中以模块.的方式引用,部分模块并非原生模块,请使用

pip install *

安装;同理,为了方便索引,R中也以::表示了函数以及函数所在包的名字,如果不含::表示为R的默认包中就有,如含::,请使用

install.packages("*")

安装。

连接器与io

数据库

类别PythonR
MySQL mysql-connector-python(官方) RMySQL
Oracle cx_Oracle ROracle
Redis redis rredis
MongoDB pymongo RMongo, rmongodb
neo4j py2neo RNeo4j
Cassandra cassandra-driver RJDBC
ODBC pyodbc RODBC
JDBC 未知[Jython Only] RJDBC

IO类

类别PythonR
excel xlsxWriter, pandas.(from/to)_excel, openpyxl openxlsx::read.xlsx(2), xlsx::read.xlsx(2)
csv csv.writer read.csv(2), read.table
json json jsonlite
图片 PIL jpeg, png, tiff, bmp

统计类

描述性统计

类别PythonR
描述性统计汇总 scipy.stats.descirbe summary
均值 scipy.stats.gmean(几何平均数), scipy.stats.hmean(调和平均数), numpy.mean, numpy.nanmean, pandas.Series.mean mean
中位数 numpy.median, numpy.nanmediam, pandas.Series.median median
众数 scipy.stats.mode, pandas.Series.mode 未知
分位数 numpy.percentile, numpy.nanpercentile, pandas.Series.quantile quantile
经验累积函数(ECDF) statsmodels.tools.ECDF ecdf
标准差 scipy.stats.std, scipy.stats.nanstd, numpy.std, pandas.Series.std sd
方差 numpy.var, pandas.Series.var var
变异系数 scipy.stats.variation 未知
协方差 numpy.cov, pandas.Series.cov cov
(Pearson)相关系数 scipy.stats.pearsonr, numpy.corrcoef, pandas.Series.corr cor
峰度 scipy.stats.kurtosis, pandas.Series.kurt e1071::kurtosis
偏度 scipy.stats.skew, pandas.Series.skew e1071::skewness
直方图 numpy.histogram, numpy.histogram2d, numpy.histogramdd 未知

回归(包括统计和机器学习)

类别PythonR
普通最小二乘法回归(ols) statsmodels.ols, sklearn.linear_model.LinearRegression lm,
广义线性回归(gls) statsmodels.gls nlme::gls, MASS::gls
分位数回归(Quantile Regress) statsmodels.QuantReg quantreg::rq
岭回归 sklearn.linear_model.Ridge MASS::lm.ridge, ridge::linearRidge
LASSO sklearn.linear_model.Lasso lars::lars
最小角回归 sklearn.linear_modle.LassoLars lars::lars
稳健回归 statsmodels.RLM MASS::rlm

假设检验

类别PythonR
t检验 statsmodels.stats.ttest_ind, statsmodels.stats.ttost_ind, statsmodels.stats.ttost.paired; scipy.stats.ttest_1samp, scipy.stats.ttest_ind, scipy.stats.ttest_ind_from_stats, scipy.stats.ttest_rel t.test
ks检验(检验分布) scipy.stats.kstest, scipy.stats.kstest_2samp ks.test
wilcoxon(非参检验,差异检验) scipy.stats.wilcoxon, scipy.stats.mannwhitneyu wilcox.test
Shapiro-Wilk正态性检验 scipy.stats.shapiro shapiro.test
Pearson相关系数检验 scipy.stats.pearsonr cor.test

时间序列

类别PythonR
AR statsmodels.ar_model.AR ar
ARIMA statsmodels.arima_model.arima arima
VAR statsmodels.var_model.var 未知

python还可参见PyFlux.

生存分析

类别PythonR
PH回归 statsmodels.formula.api.phreg 未知

专门分析的模块:
Python: Lifelines

机器学习类

回归

参见统计类

分类器

LDA、QDA

类别PythonR
LDA sklearn.discriminant_analysis.LinearDiscriminantAnalysis MASS::lda
QDA sklearn.discriminant_analysis.QuadraticDiscriminantAnalysis MASS::qda

SVM(支持向量机)

类别PythonR
支持向量分类器(SVC) sklearn.svm.SVC e1071::svm
非支持向量分类器(nonSVC) sklearn.svm.NuSVC 未知
线性支持向量分类器(Lenear SVC) sklearn.svm.LinearSVC 未知

基于临近

类别PythonR
k-临近分类器 sklearn.neighbors.KNeighborsClassifier 未知
半径临近分类器 sklearn.neighbors.RadiusNeighborsClassifier 未知
临近重心分类器(Nearest Centroid Classifier) sklearn.neighbors.NearestCentroid 未知

贝叶斯

类别PythonR
朴素贝叶斯 sklearn.naive_bayes.GaussianNB e1071::naiveBayes
多维贝叶斯(Multinomial Naive Bayes) sklearn.naive_bayes.MultinomialNB 未知
伯努利贝叶斯(Bernoulli Naive Bayes) sklearn.naive_bayes.BernoulliNB 未知

决策树

类别PythonR
决策树分类器 sklearn.tree.DecisionTreeClassifier tree::tree, party::ctree
决策树回归器 sklearn.tree.DecisionTreeRegressor tree::tree, party::tree

Assemble方法

类别子类别PythonR
Bagging 随机森林分类器 sklearn.ensemble.RandomForestClassifier randomForest::randomForest, party::cforest
Bagging 随机森林回归器 sklearn.ensemble.RandomForestRegressor randomForest::randomForest, party::cforest
Boosting Gradient Boosting xgboost模块 xgboost
Boosting AdaBoost sklearn.ensemble.AdaBoostClassifier adabagfastAdaboostada
Stacking 未知 未知 未知

聚类

类别PythonR
kmeans scipy.cluster.kmeans.kmeans kmeans::kmeans
分层聚类 scipy.cluster.hierarchy.fcluster (stats::)hclust
包聚类(Bagged Cluster) 未知 e1071::bclust
DBSCAN sklearn.cluster.DBSCAN dbscan::dbsan
Birch sklearn.cluster.Birch 未知
K-Medoids聚类 pyclust.KMedoids(可靠性未知) cluster.pam

关联规则

类别PythonR
apriori算法 apriori(可靠性未知,不支持py3), PyFIM(可靠性未知,不可用pip安装) arules::apriori
FP-Growth算法 fp-growth(可靠性未知,不支持py3), PyFIM(可靠性未知,不可用pip安装) 未知

神经网络

类别PythonR
神经网络 neurolab.net, keras.* nnet::nnet, nueralnet::nueralnet
深度学习 keras.* 不可靠包居多以及未知

当然,theano模块值得一提,但本质theano包的设计并非在神经网络,所以不归于此类。

概率图模型

python: PyMC3

文本、NLP

基本操作

类别PythonR
tokenize nltk.tokenize(英), jieba.tokenize(中) tau::tokenize
stem nltk.stem RTextTools::wordStem, SnowballC::wordStem
stopwords stop_words.get_stop_words tm::stopwords, qdap::stopwords
中文分词 jieba.cut, smallseg, Yaha, finalseg, genius jiebaR
TFIDF gensim.models.TfidfModel 未知

主题模型

类别PythonR
LDA lda.LDA, gensim.models.ldamodel.LdaModel topicmodels::LDA
LSI gensim.models.lsiModel.LsiModel 未知
RP gensim.models.rpmodel.RpModel 未知
HDP gensim.models.hdpmodel.HdpModel 未知

值得留意的是python的新第三方模块,spaCy

与其他分析/可视化/挖掘/报表工具的交互

 

类别PythonR
weka python-weka-wrapper RWeka
Tableau tableausdk Rserve(实际是R的服务包)

转载于:https://segmentfault.com/a/1190000005041649


以上是关于Python 和 R 数据分析/挖掘工具互查的主要内容,如果未能解决你的问题,请参考以下文章

信息收集之域名IP互查

python 数据分析,R语言与数据挖掘|学习资料分享 05

R语言文本挖掘

R语言-Rattle数据挖掘

python数据挖掘工具包有啥优缺点?

python 数据挖掘需要用哪些库和工具