乐享数据一直以分享知识,总结经验,传播快乐为主题,这一期我想为大家分享几个最近学习的R包,通过简单的介绍和链接上相应的学习资源,希望志同道合的朋友可以一起来学习,一起来提高。
1.REmap包,构建可交互地图
如果翻看往期的乐享数据的文章,可以发现有比较多的是运用地图数据可视化的文章(如果有朋友没有看到,可加入微信公众号“乐享数据”关注后,在历史文章中查看学习)。而当我看到REmap包的时候顿时眼前一亮,以前需要花大把时间获取百度地图API,或获取地图经纬度信息的手段,通过REmap一两条命令就完全搞定,让人大呼过瘾。
REmap包是由郎大为基于Echarts 的一个R包。主要的目的是为广大数据玩家提供一个简便的,可交互的地图数据可视化工具。
目前托管在[github](https://github.com/lchiffon/REmap)上。其内部自动封装了百度API获取城市经纬度数据。可以通过以下步骤安装:library(devtools)
install_github('lchiffon/REmap')
library(REmap)
可方便获取城市经纬度:
library(REmap)
get_city_coord("天津") #获取一个城市经纬度
## [1] 117.20591 39.09091
get_geo_position(c("北京","上海","广州","深圳")) #获取城市向量经纬度
## lon lat city
## 12 116.413554 39.911013 北京
## 120 121.480237 31.236305 上海
## 21 113.270793 23.135308 广州
## 25 114.066112 22.548515 深圳
同时可绘制漂亮的可交互的动态地图。主要运用remap()函数绘制迁徙地图,remapC()绘制分级统计地图及remapB()绘制可放缩交互地图。大家可以在七风阁作者博客上自己学习。<http://lchiffon.github.io/>
另外可以再做一个小广告 - 下周六晚上(7月30日) 郎大为会在雪晴数据网,以在线直播方式给大家介绍 REmap包<http://www.xueqing.tv/cms/article/10>,感兴趣的筒子可以一起来学习并与作者参与互动。
2.wordcloud2包
一般我们都用wordcloud包来创建词云,也是在七风阁作者博客上<http://lchiffon.github.io/>发现一个wordcloud2包,非常好玩。
除了拥有wordcloud包的分词可视化功能外,它还可以让我们自定义形成词云的形状,例如:
library(wordcloud2)
wordcloud2(demoFreq, size = 1,shape = 'star')
再比如可以自己选择中意的图片作为词云绘制的形状,在作者example中举例选择一个t.png的黑白图片:
figPath = "t.png"
wordcloud2(demoFreq, figPath = figPath, size = 1.5,color = "skyblue")
3.corrplot相关性可视化图
相关性分析作为探索性分析的开始,往往是数据分析中用得最多的,corrplot包就是一个专门针对相关性分析做的可视化包。虽然说包已经是比较老的了,但可以说是非常实用的。corrplot由魏太云创建,可实现矩阵的可视化,甚至一些聚类的可视化功能。详细学习资料可以在:魏太云:矩阵可视化及corrplot包的介绍<http://wenku.it168.com/d_001241048.shtml>及SCAN上学习。
以林荟女士最近的“用R进行市场调查和消费者感知分析”抽取一个用corrplot()做相关的图为例子吧!
# 我们用`corrplot()`函数检查问卷调查问题的相关性:
# 选取其中的问卷调查项
library(dplyr)
select(airline,Easy_Reservation:Recommend) %>%
# 得到相关矩阵
cor() %>%
# 用corrplot()绘制相关图
# 选项order="hclust"按照变量的相似度,基于系统聚类的结果对行列进行重新排列
corrplot(,order="hclust")
4.sparklyr包
这是Rstudio公司最新颁布的实现R与Spark连接的包,可以说为长期使用R做大数据的人带来了福音。主要功能:
1.实现R与Spark的连接—sparklyr包提供了一个完整的dplyr后端
2.筛选并聚合Spark数据集,接着在R中实现分析与可视化
3.利用Spark的MLlib机器学习库在R中实现分布式机器学习算法
4.可以创建一个扩展,用于调用SparkAPI并为Spark的所有包集提供了一个接口
5.未来在RStudio IDE中集成支持Spark和sparklyr包
通过通过devtools包实现sparklyr包的安装:
install.packages("devtools")
devtools::install_github("rstudio/sparklyr")
当然这个包涉及的内容比较多,本人也是在探索中,所有感兴趣的筒子可以一起来探讨哈。
以下是学习网址:
http://mp.weixin.qq.com/s?__biz=MzA5NTcyNDg1MQ==&mid=2649610745&idx=1&sn=1bfb1cbc1ee4cd1e04ae22d2d8c9efb8&scene=23&srcid=07243QyKrqibP59ueE1WVK54#rd
5.其他学习内容
最后,列出一些近期正在捣鼓的其他学习内容,小伙伴们,一起学习吧!
coreNLP包 文本挖掘
Rwordseg包 中文文本挖掘
fmsb包 radarchart()做雷达图
Windows下搭建Docker环境,R做可重复研究的liftr包
slidify包 实现幻灯片制作 及中文乱码的解决
参考资料
要想获取分析代码,可查看原文,进入本人的GitHubhttps://github.com/Alven8816查看下载,或通过本人邮箱yuwenhuajiayou@sina.cn与本人联系
”乐享数据“个人公众号,不代表任何团体利益,亦无任何商业目的。任何形式的转载、演绎必须经过公众号联系原作者获得授权,保留一切权力。欢迎关注“乐享数据”。