R语言中常用包(二)
数据导入
以下R包主要用于数据导入和保存数据
feather:一种快速,轻量级的文件格式。在R和python上都可使用
readr:实现表格数据的快速导入。中文介绍可参考这里
readxl:读取Microsoft Excel电子表格数据
openxlsx:读取Microsoft Excel电子表格数据
googlesheets:读取google电子表格数据
haven:读取SAS,SPSS和Stata统计软件格式的数据
httr:从网站开放的API中读取数据
rvest:网页数据抓取包
xml2:读取HTML和XML格式数据
webreadr:读取常见的Web日志格式数据
DBI:数据库管理系统通用接口包
RMySQL:用于连接MySQL数据库的R包
RPostgres:用于连接PostgreSQL数据库的R包
bigrquery用于连接Google BigQuery的R包
PivotalR:用于读取Pivitol(Greenplum)和HAWQ数据库中的数据
dplyr:提供了一个访问常见数据库的接口
data.table:data.table包的fread()函数可以快速读取大数据集
git2r:用于访问git仓库
数据整理
以下R包主要用于数据整理,以便于你后续建模分析:
tidyr:用于整理表格数据的布局
dplyr:用于将多个数据表连接成一个整齐的数据集
purrr:函数式编程工具,在做数据整理时非常有用。
broom:用于将统计模型的结果整理成数据框形式
zoo:定义了一个名zoo的S3类型对象,用于描述规则的和不规则的有序的时间序列数据。
数据可视化
以下R包用于数据可视化:
ggplot2及其扩展:ggplot2包提供了一个强大的绘图系统,并实现了以下扩展
ggthemes:提供扩展的图形风格主题
ggmap:提供Google Maps,Open Street Maps等流行的在线地图服务模块
ggiraph:绘制交互式的ggplot图形
ggstance:实现常见图形的横向版本
GGally:绘制散点图矩阵
ggalt:添加额外的坐标轴,geoms等
ggforce:添加额外geoms等
ggrepel:用于避免图形标签重叠
ggraph:用于绘制网络状、树状等特定形状的图形
ggpmisc:光生物学相关扩展
geomnet:绘制网络状图形
ggExtra:绘制图形的边界直方图
gganimate:绘制动画图
plotROC:绘制交互式ROC曲线图
ggspectra:绘制光谱图
ggnetwork:网络状图形的geoms
ggradar:绘制雷达图
ggTimeSeries:时间序列数据可视化
ggtree:树图可视化
ggseas:季节调整工具
lattice:生成栅栏图
rgl:交互式3D绘图
ggvis:交互式图表多功能系统
htmlwidgets:一个专为R语言打造的可视化JS库
leaflet:绘制交互式地图
dygraphs:绘制交互式时间序列图
plotly:交互式绘图包,中文介绍详见这里
rbokeh:用于创建交互式图表和地图,中文介绍
Highcharter:绘制交互式Highcharts图
visNetwork:绘制交互式网状图
networkD3:绘制交互式网状图
d3heatmap:绘制交互式热力图,中文介绍
DT:用于创建交互式表格
threejs:绘制交互式3d图形和地球仪 -rglwidget:绘制交互式3d图形
DiagrammeR:绘制交互式图表
MetricsGraphics:绘制交互式MetricsGraphics图
rCharts:提供了对多个javascript数据可视化库(highcharts/nvd3/polychart)的R封装。
coefplot:可视化统计模型结果
quantmod:可视化金融图表
colorspace:基于HSL的调色板
viridis:Matplotlib viridis调色板
munsell:Munsell调色板
RColorBrewer:图形调色板
igraph:用于网络分析和可视化
latticeExtra:lattice绘图系统扩展包
sp:空间数据工具
数据转换
以下R包用于将数据转换为新的数据类型
dplyr:一个用于高效数据清理的R包。视频学习课程
magrittr:一个高效的管道操作工具包。
tibble:高效的显示表格数据的结构
stringr:一个字符串处理工具集
lubridate:用于处理日期时间数据
xts:xts是对时间序列数据(zoo)的一种扩展实现,提供了时间序列的操作接口。
data.table:用于快速处理大数据集
vtreat:一个对预测模型进行变量预处理的工具
stringi:一个快速字符串处理工具
Matrix:著名的稀疏矩阵包
统计建模与推断
下述R包是统计建模最常用的几个R包,其中的一些R包适用于多个主题。
car:提供了大量的增强版的拟合和评价回归模型的函数。
Hmisc:提供各种用于数据分析的函数
multcomp:参数模型中的常见线性假设的同时检验和置信区间计算,包括线性、广义线性、线性混合效应和生存模型。
pbkrtest用于线性混合效应模型的参数Bootstrap检验
MatrixModels:用于稠密矩阵和稀疏矩阵建模
mvtnorm:用于计算多元正态分布和t分布的概率,分位数,随机偏差等
SparseM:用于稀疏矩阵的基本线性代数运算
lme4:利用C++矩阵库 Eigen进行线性混合效应模型的计算。
broom:将统计模型结果整理成数据框形式
caret:一个用于解决分类和回归问题的数据训练综合工具包
glmnet:通过极大惩罚似然来拟合广义线性模型
gbm:用于实现随机梯度提升算法
xgboost:全称是eXtreme Gradient Boosting。是Gradient Boosting Machine的一个c++实现。目前已制作了xgboost工具的R语言接口。详见统计之都的一篇介绍
randomForest:提供了用随机森林做回归和分类的函数
ranger:用于随机森林算法的快速实现
h2o:H2O是0xdata的旗舰产品,是一款核心数据分析平台。它的一部分是由R语言编写的,另一部分是由Java和Python语言编写的。用户可以部署H2O的R程序安装包,之后就可以在R语言环境下运行了。
ROCR:通过绘图来可视化分类器的综合性能。
pROC:用于可视化,平滑和对比ROC曲线
沟通交流
以下R包用于实现数据科学结果的自动化报告,以便于你跟人们进行沟通交流。
rmarkdown :用于创建可重复性报告和动态文档
knitr:用于在PDF和HTML文档中嵌入R代码块
flexdashboard:基于rmarkdown,可以轻松的创建仪表盘
bookdown:以R Markdown为基础,用于创作书籍和长篇文档
rticles:提供了一套R Markdown模板
tufte:用于实现Tufte讲义风格的R Markdown模板
DT:用于创建交互式的数据表
pixiedust:用于自定义数据表的输出
xtable:用于自定义数据表的输出
highr:用于实现R代码的LaTeX或HTML格式输出
formatR:通过tidy_source函数格式化R代码的输出
yaml:用于实现R数据与YAML格式数据之间的通信。
自动化分析
以下R包用于创建自动化分析结果的数据科学产品:
shiny:一个使用R语言开发交互式web应用程序的工具。中文教程
shinydashboard:用于创建交互式仪表盘
shinythemes:给出了Shiny应用程序的常用风格主题
shinyAce:为Shiny应用程序开发者提供Ace代码编辑器。
shinyjs:用于在Shiny应用程序中执行常见的JavaScript操作
miniUI:提供了一个UI小部件,用于在R命令行中集成交互式应用程序
shinyapps.io:为创建的Shiny应用程序提供托管服务
Shiny Server Open Source:为Shiny应用程序提供开源免费的服务器
Shiny Server Pro:为企业级用户提供一个Shiny应用程序服务器
rsconnect:用于将Shiny应用程序部署到shinyapps.io
plumber:用于将R代码转化为一个web API
rmarkdown:用于创建可重复性报告和动态文档
rstudioapi:用于安全地访问RStudio IDE的API
程序开发
以下这些包主要用于开发自定义的R包:
RStudio Desktop IDE:R的IDE。大家都懂,不用解释。
RStudio Server Open Source:开源免费的RStudio服务器
RStudio Server Professional:商业版RStudio服务器
devtools:一个让开发R包变得简单的工具集
packrat:创建项目的特定库,用于处理包的版本问题,增强代码重现能力。
drat:一个用于创建和使用备选R包库的工具
testthat:单元测试,让R包稳定、健壮,减少升级的痛苦。
roxygen2:通过注释的方式,生成文档,远离Latex的烦恼。
purrr:一个用于 提供函数式编程方法的工具
profvis:用于可视化R代码的性能分析数据
Rcpp:用于实现R与C++的无缝整合。详见统计之都文章
R6:R6是R语言的一个面向对象的R包,可以更加高效的构建面向对象系统。
htmltools:用于生成HTML格式输出
nloptr:提供了一个NLopt非线性优化库的接口
minqa:一个二次近似的优化算法包
rngtools:一个用于处理随机数生成器的实用工具
NMF:提供了一个执行非负矩阵分解的算法和框架
crayon:用于在输出终端添加颜色
RJSONIO:rjson是一个R语言与json进行转的包,是一个非常简单的包,支持用 C类库转型和R语言本身转型两种方式。
jsonlite:用于实现R语言与json数据格式之间的转化
RcppArmadillo:提供了一个Armadillo C++ Library(一种C++的线性代数库)的接口
实验数据
以下R包给出了案例实战过程中可用的训练数据集:
babynames:包含由美国社会保障局提供的三个数据集
neiss:2009-2014年期间提供给美国急诊室的所有事故报告样本数据
yrbss:美国疾病控制中心2009-2013年期间青年危险行为监测系统数据
hflights:
USAboundaries:2011年全年休斯顿机场的所有航班数据
rworldmap:国家边界数据
usdanutrients:美国农业部营养数据库
fueleconomy:美国环保署1984-2015年期间的燃油经济数据
nasaweather:包含了一个覆盖中美洲的非常粗糙的24*24格地理位置和大气测量数据。
mexico-mortality:墨西哥死亡人数数据
data-movies和ggplotmovies:来自互联网电影数据库imdb.com的数据
pop-flows:2008年全美人口流动数据
data-housing-crisis:经过清洗后的2008美国房地产危机数据
gun-sales:纽约时报提供的有关枪支购买的每月背景调查统计分析数据
stationaRy:从成千上万个全球站点收集到的每小时气象数据
gapminder:摘自Gapminder的数据
janeaustenr:简·奥斯丁小说全集数据
更多R包介绍查看CRAN任务视图
R语言中常用包(二)的更多相关文章
- R语言中的机器学习包
R语言中的机器学习包 Machine Learning & Statistical Learning (机器学习 & 统计学习) 网址:http://cran.r-project ...
- R语言中的数据处理包dplyr、tidyr笔记
R语言中的数据处理包dplyr.tidyr笔记 dplyr包是Hadley Wickham的新作,主要用于数据清洗和整理,该包专注dataframe数据格式,从而大幅提高了数据处理速度,并且提供了 ...
- R语言中样本平衡的几种方法
R语言中样本平衡的几种方法 在对不平衡的分类数据集进行建模时,机器学习算法可能并不稳定,其预测结果甚至可能是有偏的,而预测精度此时也变得带有误导性.在不平衡的数据中,任一算法都没法从样本量少的类中获取 ...
- R语言中文分词包jiebaR
R语言中文分词包jiebaR R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒.直到大数据 ...
- R+openNLP︱openNLP的六大可实现功能及其在R语言中的应用
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- openNLP是NLP中比较好的开源工具,R语 ...
- R语言︱H2o深度学习的一些R语言实践——H2o包
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- R语言H2o包的几个应用案例 笔者寄语:受启发 ...
- R语言︱文本挖掘——jiabaR包与分词向量化的simhash算法(与word2vec简单比较)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- <数据挖掘之道>摘录话语:虽然我比 ...
- R语言 文本挖掘 tm包 使用
#清除内存空间 rm(list=ls()) #导入tm包 library(tm) library(SnowballC) #查看tm包的文档 #vignette("tm") ##1. ...
- R语言学习笔记1——R语言中的基本对象
R语言,一种自由软件编程语言与操作环境,主要用于统计分析.绘图.数据挖掘.R本来是由来自新西兰奥克兰大学的Ross Ihaka和Robert Gentleman开发(也因此称为R),现在由“R开发核心 ...
随机推荐
- Codeforces758B Blown Garland 2017-01-20 10:19 87人阅读 评论(0) 收藏
B. Blown Garland time limit per test 1 second memory limit per test 256 megabytes input standard inp ...
- The Activities of September
- Android-XML格式描述
XML是W3C公司提出的标准,使用范围非常广阔,在框架的配置,程序的配置,布局文件的定义,网络传输等,无所不在: 以前学Java的时候,对XML的名词定义是,根节点,子节点 等等,而在Android里 ...
- Android 权限的由来
在Android APP开发过程中,某些行为动作需要在AndroidManifest.xml清单文件中进行权限相关的配置: <!-- 增加权限 --> <uses-permissio ...
- Django开发Web监控工具-pyDash
今天发现了一个比较有意思的监控工具,是基于Django开发的,开发大牛已经开放了源代码,向大牛致敬,同时研究研究,目前感觉这个监控比较直观,可以针对个人服务器使用,同时涉及的环境比较简单,部署起来 ...
- 申请Let's Encrypt通配符HTTPS证书
./certbot-auto --server https://acme-v02.api.letsencrypt.org/directory -d "*.xxx.com" --ma ...
- [ASP.NET]关于DOT NET的IIS配置LocalHost访问和127.0.0.1访问的区别
项目上遇到一个问题跟大家分享下,配置的localhost地址本地无法访问接口,外网却可以访问,查其原因百度资料比较全面的解释 localhost与127.0.0.1的概念和工作原理之不同 要比较两个东 ...
- JS下对日期进行比较
20181019更新一个获取指定日期的function //获取指定日期 function getBeforeDate(n) { var n = n; var d = new Date(); var ...
- C#深入浅出获取时间DateTime
首先,先了解微软.net里面的DateTime的DateTime.Now.DateTime.Now.Date.DateTime.Now.Day.DateTime.Now.DayOfWeek.DateT ...
- leetcode 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 1: 输入: [1,3,5,6], 5 输 ...