為啥子開發(fā)新包
這要從兩個牛批的老包說起。
dplyr
先科普一下dplyr,是Rstudio首席科學家hadly大佬的包包套裝tidyverse里最能打的一個包,將基礎包$,[ ]這類亂碼式的語法變得可讀性更好,復雜的功能簡單化,大大減少初學者的學習成本,是我的真愛
氮素,被吐槽的比較厲害的是處理大數(shù)據(jù)的速度(小的數(shù)據(jù)就憋說了,速度不重要)。
data.table
其實data.table里面我只用過fread這個函數(shù)讀取數(shù)據(jù),非常能打,又快又智能,也是我的真愛。但他的語法就不如dplyr優(yōu)秀了,大佬專用系列~
有人整理了data.table和dplyr包的對比:


還有兩張截圖就不放了。
對于這兩個包的優(yōu)秀程度,從我以前寫的這兩篇筆記可見一斑:
寫給零基礎同學的R語言第四篇教程-神奇R包dplyr
超有誠意的R語言數(shù)據(jù)讀取指南(長文慎入)
pia的一下雙劍合璧了
大佬沖冠一怒寫了個新包出來,把他倆雙劍合璧了!登上CRAN的時間市11月12號,下圖市他的介紹現(xiàn)場。

他明明是個實力派,但是顏值跟PPT都不允許啊。
放張大圖,如果看到這里你已經(jīng)看不懂了,就去文末看圖舔屏吧。
dtplyr腫么用?????
吹爆,首發(fā)介紹的博客地址是https://www.tidyverse.org/blog/2019/11/dtplyr-1-0-0/
最基礎的用法灰常簡單:
加載
library(data.table)
library(dtplyr)
library(dplyr, warn.conflicts = FALSE)
懶蛋表格?
?重點是將你的tibble數(shù)據(jù)結構改一下:
mtcars2 <- lazy_dt(mtcars)
class(mtcars2)
## [1] "dtplyr_step_first" "dtplyr_step"
具體改成了啥類型不打緊,重要的是改這么一錘子,就能提速了!
假裝還在用dplyr:
下面的語法還是dplyr的語法,但其實已經(jīng)被翻譯走啦,速度杠杠的:
mtcars2 %>%
filter(wt < 5) %>%
mutate(l100k = 235.21 / mpg) %>% # liters / 100 km
group_by(cyl) %>%
summarise(l100k = mean(l100k))
博客里面,后面的代碼是大佬為了表示提速了他很膨脹,就不用演示了,直接上結果:

差別不在一個數(shù)量級啊?。。?!
就是這個人。

微信公眾號生信星球同步更新我的文章,歡迎大家掃碼關注!

我們有為生信初學者準備的學習小組,點擊查看??
想要參加我的線上線下課程,也可加好友咨詢??
如果需要提問,請先看生信星球答疑公告