为啥子开发新包
这要从两个牛批的老包说起。
dplyr
先科普一下dplyr,是Rstudio首席科学家hadly大佬的包包套装tidyverse里最能打的一个包,将基础包$,[ ]这类乱码式的语法变得可读性更好,复杂的功能简单化,大大减少初学者的学习成本,是我的真爱
氮素,被吐槽的比较厉害的是处理大数据的速度(小的数据就憋说了,速度不重要)。
data.table
其实data.table里面我只用过fread这个函数读取数据,非常能打,又快又智能,也是我的真爱。但他的语法就不如dplyr优秀了,大佬专用系列~
有人整理了data.table和dplyr包的对比:
还有两张截图就不放了。
对于这两个包的优秀程度,从我以前写的这两篇笔记可见一斑:
写给零基础同学的R语言第四篇教程-神奇R包dplyr
超有诚意的R语言数据读取指南(长文慎入)
pia的一下双剑合璧了
大佬冲冠一怒写了个新包出来,把他俩双剑合璧了!登上CRAN的时间市11月12号,下图市他的介绍现场。
他明明是个实力派,但是颜值跟PPT都不允许啊。
放张大图,如果看到这里你已经看不懂了,就去文末看图舔屏吧。
dtplyr肿么用?????
吹爆,首发介绍的博客地址是https://www.tidyverse.org/blog/2019/11/dtplyr-1-0-0/
最基础的用法灰常简单:
加载
library(data.table)
library(dtplyr)
library(dplyr, warn.conflicts = FALSE)
懒蛋表格?
✨重点是将你的tibble数据结构改一下:
mtcars2 <- lazy_dt(mtcars)
class(mtcars2)
## [1] "dtplyr_step_first" "dtplyr_step"
具体改成了啥类型不打紧,重要的是改这么一锤子,就能提速了!
假装还在用dplyr:
下面的语法还是dplyr的语法,但其实已经被翻译走啦,速度杠杠的:
mtcars2 %>%
filter(wt < 5) %>%
mutate(l100k = 235.21 / mpg) %>% # liters / 100 km
group_by(cyl) %>%
summarise(l100k = mean(l100k))
博客里面,后面的代码是大佬为了表示提速了他很膨胀,就不用演示了,直接上结果:
差别不在一个数量级啊!!!!
就是这个人。
微信公众号生信星球同步更新我的文章,欢迎大家扫码关注!
我们有为生信初学者准备的学习小组,点击查看◀️
想要参加我的线上线下课程,也可加好友咨询🔼
如果需要提问,请先看生信星球答疑公告
网友评论