我还需要和我的猫一起发文章吗?

前些天在朋友圈偶然发现一个有趣的图片及其GitHub,想邀请作者分享相关可视化知识,被婉拒后,只好发任务给学徒,让他们帮我学习,并且分享出来!

下面看(中科院武汉植物园硕士)学徒的表演:

前言

早年一个学术界的段子一直让我印象深刻,有一些作者独立完成了自己的工作,却囿于投稿杂志的陈规,无法只写一个作者,无()奈()间()加上了自己的猫,或者邀请其他萌萌哒的小助手作为co-authors。而随着时间的发展,根据学科本身的特点,越来越多的学者喜欢独行侠式科研,毕竟,全栈即自由嘛~正所谓一个人就是一个队伍,那么至今生物信息领域中的独行侠有多少呢,让我们看看大神是怎么统计的。

目的很单纯 玩法很多样

进入大神的github,从README文件上看,他可能只是对2019年Pubmed上发表的bioinfomatics相关的文章做了一个数据分析并可视化,但点开代码,运行一下,就发现了新世界,小提琴图下的第一行正在奏响独行侠之歌呢!乍一看,生信领域发表文章,一人即可成团的,还真不少!大神先从NCBI收集了一波数据,然后用R语言进行了统计,最后用经典的R包ggplot2包对自己的统计结果做了可视化。

同时,大神还统计了投稿最多的前20个期刊的发表文章速度,这也是广大投稿人群的关注热点之一了。天下武功,为快不过,投稿也是一样,接收速度深深地牵动着毕业学子的小心脏,这位大神太懂了。

这么有意思 果断重复之

按照README文件说的从PubMed搜索bioinformatics,选择右侧的"send to File",再选择"MEDLINE"格式,按照发表日期排序,选择"Create File".

https://www.ncbi.nlm.nih.gov/pubmed/

这个文件有些巨大,电脑有些处理不了,放在服务器上打开看看,可以看到PMID、作者、接收时间、发表时间、杂志名称、文章摘要等等信息,现在要将其中有用的信息提取出来,这里我们需要的是与每一篇文章PMID对应的杂志名接收时间发表时间作者信息,运用shell脚本提取为文本文件并压缩,导入R的时候出现了一点格式问题,发现是回车符号的问题,使用shell三大小助手之一换掉它。

sed -i s'/
//g' pubmed_author.txt        #替换掉文件中所有的回车符号
gzip pubmed_author.txt        #压缩 

然后将文件都导入Rstudio,进行统计分析。

library(tidyverse)
a1 <- read_tsv("data/01_extract/pubmed_journal.txt.gz", col_types = cols("pmid" = "c"))
a2 <- read_tsv("data/01_extract/pubmed_author.txt.gz", col_types = cols("pmid" = "c"))
a <- a1 %>%
  count(journal) %>%        #统计杂志个数
  arrange(desc(n)) %>%        #以n为矢量降序排列
  head(20) %>%        #选取前20
  inner_join(a1, by = "journal") %>%        #用journal连a1的其他信息
  inner_join(a2 %>% mutate(author_count = sapply(strsplit(author, "; "), length)), by = "pmid")        #用pmid连a2的其他信息

现在我们就得到了统计的结果——截至2019年8月26号前的所有含有bioinformatics的文章中,接受投稿最多的前20本杂志接受文章的作者数量信息,接下来就是可视化成第一张图的样子。

在进行发表速度的统计中,导入时出现了一个error,4月31日是不被R识别的,确实4月也没有这一天,改它。

Ra2[13700,3]<-as.Date('2009-04-30',format='%Y-%m-%d') #修改单个单元格

实际上用到的就是这两列信息。

ggplot太复杂,ggpubr考虑下?

实不相瞒,大神的的ggplot用得十分之娴熟,小细节都做得非常精致,新手小白可能只能run一下,那么作为发表友好型的R包ggpubr是否可以让我们真正用起来呢?答案是,随缘吧。

我们来尝试一下,首先按照大神的方法做好统计,选择投稿最多的20个杂志,将pmid和作者信息连接上去,再统计出每一篇文章的作者数。接下来加载ggpubr包,设定变量x和y,主标题和副标题,调整小提琴图的宽度,去掉y=1以下的图,去掉图例,将杂志名旋转75°,代码简单了许多,能够画出一个类似的图,但是数据信息还是没能放到图片上显示出来,我们只能看到生物信息领域的独行侠不少,但是无法从图片直接获得详细数据,这里还需要再钻研一下。

if(!require(ggpubr))install.packages('ggpubr')        #安装ggpubr    
library(ggpubr)        #加载包
ggviolin(a,x='journal',y='author_count', color = "journal",
         fill = "journal",  title = "Search 'Bioinformatics' on PubMed",
         xlab="#Journals",ylab = "#Authors",size = 0.8,width = 1.0,
         ,yscale = "log10", trim = 1,legend = "NULL",
         ggtheme=theme(axis.text.x = element_text(angle = 75, hjust = 1)))

ggsave(filename = "author1.png", width = 12, height = 12)        #保存图片

实在是意难平的话,PS一下?皮一下很开心~

小结

从结果来看,现在的科研环境显然允许一个人成团发文章了,这样的独行侠还不少,不用拿无辜的猫凑数啦,R语言博大精深,希望能够画出能展示所有信息的神图,practice,practice,practice!

大神的github地址

https://github.com/yanlinlin82/190825a_Bioinfo-Papers/blob/master/README.md

后记

当然了,如果你在中国大陆,你可能需要神器加成才能成功下载GitHub文件:当 Salmon 构建 index 秒失败时应该反思哪里

又或者,你感兴趣昨天优秀学徒的表演:

(0)

相关推荐

  • ggpubr添加的显著性标记不能使用ggplot主题修改

    ggpubr可能对于我们做差异分析带来了方便,但是遗憾的是其对出图添加的显著性标示并不能通过R语言ggplot主题系统进行修改. 我们应该如何修改呢,参考: stack overflowde 方法进行 ...

  • 【R分享|实战】地表最全R拼图教程,告别AI和PS

    " 今日推文较长,请先收藏并空时学习.相信你一定有所收获."   --科白君 "R实战"专题·第16篇   编辑 | 科白维尼   4830字 |12分钟阅读 ...

  • 技术贴 | R语言:ggplot绘图的Y轴截断和拼接

    导读 记录一个产生Y轴截断ggplot绘图的方法.先用coord_cartesian根据Y轴把图截断成上下两份,接着用ggarrange拼接到一起,实现去不要的部分 一.准备依赖包 ggarrange ...

  • R之箱线图绘制

    16s分析一直在连载,但是最基础的莫过于alpha多样性了,但是箱线图却不是alpha多样性的唯一选择,箱线图也不是局限于alpha多样性,这里借助alpha多样性,将箱线图做一个完整绘制 #这里安装 ...

  • 浅谈生态学领域科研图表绘制的方向和未来

    摘要 统计和绘图之间界限越来越模糊: 组合图形是趋势: 示意图或者照片图像和图表逐渐结合: R语言继续发光发热.ggplot是核心. 写在前面 在近年来,随着作图工具发展,我们越来越自由,更加可以随心 ...

  • ggballoonplot|气球图-多分类数据可视化

    ggballoonplot(气球图)可用于多分类数据的可视化展示,其中每个单元格都包含一个点,其大小反映了相应组件的相对大小. 本文将使用ggpubr中的ggballoonplot()函数以及ggpl ...

  • 介绍一下PubMed的字段检索

    除了主题词检索和自动匹配检索外,PubMed还支持一种可以准确检索某一字段的检索方式,即字段限定检索,简称字段检索.字段检索在某些数据库中也称作检索项和检索入口. PubMed中的文献是由可以反映文献 ...

  • 【养宠小知识】家里猫患过猫鼻支还想养新猫

    家里的猫咪如果患过猫鼻支病毒,但是又想养新猫的话,宠物主人就应该先解决患过猫鼻支猫咪的问题.因为如果宠物主人以为猫咪已经痊愈,其实它并没有完全好的话,就会把病毒传染给新来的猫咪,带来更加严重的问题.可 ...

  • 头顶头发稀少还能恢复吗?生发密发最简单方法!

    头顶头发稀少的症状,不仅仅局限于老年人,越来越多的中青年人也开始出现头顶头发稀少的症状.许多的中青年人,每天都在为生发而烦恼.他们试图通过各种方法,尝试生发,但最终以失败告终.那么头顶脱发稀少还能恢复 ...

  • 电影九条命-我爸还不如一只猫

    电影九条命-我爸还不如一只猫 3.Sometimes,  I almost wish my daddy was more like the cat,but I really just want my ...

  • 【养宠小知识】猫咪发腮是靠基因吗

    猫咪发腮主要是基因决定的,猫咪发腮是靠七分基因,三分靠后天,发腮是否能够成功主要取决于基因.后期也可以通过饮食加强营养来达到发腮的效果,一般猫咪在5到8个月左右的时候开始发腮,需要大量营养补充,才可以 ...

  • 李雪琴又爆梗了:现在的孩子还学编程,头发还没长就先掉发了!

    李雪琴又爆梗了:现在的孩子还学编程,头发还没长就先掉发了!

  • 晚饭后最喜欢和我的猫一起看电视,但它看到的跟我们看到的一样吗

    今天我们来说一下,晚饭后最喜欢和我的猫一起看电视,但它看到的跟我们看到的一样吗? 有不少猫咪都非常地爱看电视,尤其是晚上,电视中发出的光线.声音,同一些追逐情节深深地吸引着它. 动物世界.猫和老鼠.狮 ...

  • 很遗憾,利路修,你还得和我一样继续上班

    利路修,人称利老师,是今年男团选秀综艺<创造营2021>的出圈选手. 别人在创造营努力营业,而利路修却是被迫打工,只想下班.本是两位外国选手的翻译助手,被导演看中后参加选秀,随时准备&qu ...

  • 鲍里斯约翰逊今天入主唐宁街,想养宠物狗,还得看唐宁猫的脸色

    这是唐宁街上的猫第777篇原创文章 作者:唐宁猫 鲍里斯约翰逊今天将正式入主唐宁街10号,和女友嘉莉西蒙兹住在一起.一位政府发言人早些时候证实,在他被确认为保守党领袖七天后,这对夫妇将入主唐宁街10号 ...

  • 课题结题了还能发文章吗,课题文章什么时候发

    课题结题了还能发文章吗?课题研究往往少不了要发文章,但文章发表的时间,会因课题不同而异,有的是在结题前,有的是在结题后.即课题结题了还能发文章,但文章是否结题了才发,要看具体课题的规定. 课题结题之所 ...