本篇内容介绍了“用R语言怎么画小提琴图”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
library(readr)
df<-read_tsv("author_number.tsv")
head(df)
table(df$journal)
summary()
函数看一些数据的基本情况summary(df)
作者数量最多的竟然有446人,中位数是6个人,符合日常认知
我们看一下400多个作者的论文是什么?
library(dplyr)
df%>%
filter(auth_num == 446) -> df1
df1$id
这个应该是采集了很多人的数据,可能是把参与实验的所有人全都列成作者了
用原始数据作图代码和结果如下
ggplot(df, aes(x=journal, y=auth_num, fill=journal)) +
geom_violin(scale="width") +
geom_boxplot(width=.12,
fill=I("black"),
notch=T,
outlier.size=NA,
col="grey40") +
stat_summary(fun="median",
geom="point", shape=20, col="white") +
#scale_y_log10(breaks=c(1:5, seq(10, 50, by=10), 100, 200, 300)) +
coord_flip() + labs(x="", y="Number of authors per paper") +
theme_classic() + theme(legend.position="none") +
scale_fill_brewer()
这个结果不太好看,所有作者对原始数据做了log10转化
ggplot(df, aes(x=journal, y=auth_num, fill=journal)) +
geom_violin(scale="width") +
geom_boxplot(width=.12,
fill=I("black"),
notch=T,
outlier.size=NA,
col="grey40") +
stat_summary(fun="median",
geom="point", shape=20, col="white") +
scale_y_log10(breaks=c(1:5, seq(10, 50, by=10), 100, 200, 300)) +
coord_flip() + labs(x="", y="Number of authors per paper") +
theme_classic() + theme(legend.position="none") +
scale_fill_brewer()
log10转换 是一种比较好的方案当数据有明显的离群值的时候
lappy()
函数指定参数
lapply(files_all,
read_tsv,
col_type= list(
col_character(),
col_character(),
col_character(),
col_character())) %>%
bind_rows -> data_all
统计字符串中指定字符的数量
library(stringr)
str_count("A,B,C",pattern=",")
“用R语言怎么画小提琴图”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。