在R中用盒状图表示

在R中用盒状图表示,r,R,我有一个数据集,我想通过箱线图比较任意两个基因的表达值,如何接近这一点,这是我的数据集样本: structure(list(gene_id = structure(6:11, .Label = c("__alignment_not_unique", "__ambiguous", "__no_feature", "__not_aligned", "__too_low_aQual", "

我有一个数据集,我想通过箱线图比较任意两个基因的表达值,如何接近这一点,这是我的数据集样本:

structure(list(gene_id = structure(6:11, .Label = c("__alignment_not_unique", 
"__ambiguous", "__no_feature", "__not_aligned", "__too_low_aQual", 
"ENSG00000000005", "ENSG00000000419", "ENSG00000000457", "ENSG00000000460", 
"ENSG00000000938", "ENSG00000000971", "ENSG00000001036", "ENSG00000001084", 
"ENSG00000001167", "ENSG00000001460", "ENSG00000001461", "ENSG00000001497", 
"ENSG00000001561", "ENSG00000001617", "ENSG00000001626", "ENSG00000001629", 
"ENSG00000001630", "ENSG00000001631", "ENSG00000002016", "ENSG00000002079", 
"ENSG00000002330", "ENSG00000002549", "ENSG00000002586", "ENSG00000002587", 
"ENSG00000002726", "ENSG00000002745", "ENSG00000002746", "ENSG00000002822", 
"ENSG00000002834", "ENSG00000002919", "ENSG00000002933", "ENSG00000003056", 
"ENSG00000003096", "ENSG00000003137", "ENSG00000003147", "ENSG00000003249", 
"ENSG00000003393", "ENSG00000003400", "ENSG00000003402", "ENSG00000003436", 
"ENSG00000003509", "ENSG00000003756", "ENSG00000003987", "ENSG00000003989", 
"ENSG00000004059", "ENSG00000004139", "ENSG00000004142", "ENSG00000004399", 
"ENSG00000285989", "ENSG00000285990", "ENSG00000285991", "ENSG00000285992", 
"ENSG00000285993", "ENSG00000285994"), class = "factor"), expr = c(6L, 
754L, 447L, 426L, 5L, 1L)), row.names = c(NA, 6L), class = "data.frame")
        gene_id         expr
           <fct>       <int>
1   ENSG00000000005     6
2   ENSG00000000419     754
3   ENSG00000000457     447
4   ENSG00000000460     426
5   ENSG00000000938     5
6   ENSG00000000971     1
数据集的标题:

structure(list(gene_id = structure(6:11, .Label = c("__alignment_not_unique", 
"__ambiguous", "__no_feature", "__not_aligned", "__too_low_aQual", 
"ENSG00000000005", "ENSG00000000419", "ENSG00000000457", "ENSG00000000460", 
"ENSG00000000938", "ENSG00000000971", "ENSG00000001036", "ENSG00000001084", 
"ENSG00000001167", "ENSG00000001460", "ENSG00000001461", "ENSG00000001497", 
"ENSG00000001561", "ENSG00000001617", "ENSG00000001626", "ENSG00000001629", 
"ENSG00000001630", "ENSG00000001631", "ENSG00000002016", "ENSG00000002079", 
"ENSG00000002330", "ENSG00000002549", "ENSG00000002586", "ENSG00000002587", 
"ENSG00000002726", "ENSG00000002745", "ENSG00000002746", "ENSG00000002822", 
"ENSG00000002834", "ENSG00000002919", "ENSG00000002933", "ENSG00000003056", 
"ENSG00000003096", "ENSG00000003137", "ENSG00000003147", "ENSG00000003249", 
"ENSG00000003393", "ENSG00000003400", "ENSG00000003402", "ENSG00000003436", 
"ENSG00000003509", "ENSG00000003756", "ENSG00000003987", "ENSG00000003989", 
"ENSG00000004059", "ENSG00000004139", "ENSG00000004142", "ENSG00000004399", 
"ENSG00000285989", "ENSG00000285990", "ENSG00000285991", "ENSG00000285992", 
"ENSG00000285993", "ENSG00000285994"), class = "factor"), expr = c(6L, 
754L, 447L, 426L, 5L, 1L)), row.names = c(NA, 6L), class = "data.frame")
        gene_id         expr
           <fct>       <int>
1   ENSG00000000005     6
2   ENSG00000000419     754
3   ENSG00000000457     447
4   ENSG00000000460     426
5   ENSG00000000938     5
6   ENSG00000000971     1
我明白了:

第二次审判:

dat$family <- substr(as.character(dat$gene_id), 1, nchar(as.character(dat$gene_id))-2)
boxplot(expr ~ family, data = dat, horizontal = TRUE, las = 2)
dat$family
dat%
htmltools::browsable()


您可以对此进行更多配置,但这只是一个开始。我建议您阅读
kableExtra
的小插曲,尤其是(或),因为它们展示了一些较新的闪影功能。

对不起@r2evans,我正在阅读您关于编辑的评论,我正在尝试修复它,我很抱歉,我正在尝试及时回复。不用担心,只是指出它,很抱歉,如果它被认为是恼火的或不愉快的,我感谢你的支持,如果你仍然想编辑这个问题,请继续,我不会更改它。我尝试了这个@r2evans
par(mar=c(5,12,2,2))条形图(df1$expr,names.arg=df1$gene_id,horiz=TRUE,las=1)
我用你的代码和我得到的图更新了这个问题。这些是针对两个基因的吗?我只想尝试两种基因。我还在学习。我能不能用ID的最后一个数字来制作“假家庭”,并根据其中任何一个数字创建两个方框图,即xxx419 xxx457 xxx460-->将全部归为“400”家庭,依此类推?我更新了问题@r2evans,这是我的错误,我剪切了数据的顶部和底部并粘贴了它们,谢谢你的提示,关于你的答案,我是新来的,我怎么知道我只比较了两个基因?数据有58734行,包括冗余,我试图删除冗余,但运气不好,冗余以双下划线“\uuuuu”开头