Folioevanzhou.org
← 返回 Tessera
原样7.9 万 行 × 12 列12.3 MB3 列有缺失数据 2026-04-17

gene_ref_mouse

Ensembl gene annotation for mouse, structurally identical to gene_ref_human and meant to be used alongside it.

One row represents one gene, repeated when it maps to several Entrez IDs.

Ensembl · 收录于 2026-04-17

下载 CSV · 12.3 MB
数据预览前 6 行
ensembl_idsymbolentrez_idgene_typechromosomestartendstranddescriptionspeciesensembl_versiondownload_date
ENSMUSG00000064336mt-TfNAMt_tRNAMT1681mitochondrially encoded tRNA phenylalanine [Source:MGI Symbol;Acc:MGI:102487]mouse1152026-04-17
ENSMUSG00000064337mt-Rnr1NAMt_rRNAMT701,0241mitochondrially encoded 12S rRNA [Source:MGI Symbol;Acc:MGI:102493]mouse1152026-04-17
ENSMUSG00000064338mt-TvNAMt_tRNAMT1,0251,0931mitochondrially encoded tRNA valine [Source:MGI Symbol;Acc:MGI:102472]mouse1152026-04-17
ENSMUSG00000064339mt-Rnr2NAMt_rRNAMT1,0942,6751mitochondrially encoded 16S rRNA [Source:MGI Symbol;Acc:MGI:102492]mouse1152026-04-17
ENSMUSG00000064340mt-Tl1NAMt_tRNAMT2,6762,7501mitochondrially encoded tRNA leucine 1 [Source:MGI Symbol;Acc:MGI:102482]mouse1152026-04-17
ENSMUSG00000064341mt-Nd117,716protein_codingMT2,7513,7071mitochondrially encoded NADH dehydrogenase 1 [Source:MGI Symbol;Acc:MGI:101787]mouse1152026-04-17
变量12 列
字符型7整数5
类型
#变量类型缺失统计
1ensembl_idEnsembl gene ID.字符型—不同值 78334ENSMUSG00000094739 · ENSMUSG00000093868 · ENSMUSG00000096122 · ENSMUSG00000119368 · ENSMUSG00000118928 · ENSMUSG00000118687 · ENSMUSG00000118970 · ENSMUSG00000119766
2symbolkeyMGI gene symbol.字符型740不同值 77474Gm20806 · Gm20809 · Gm21943 · Gm22170 · Gm25547 · Gm24458 · Gm25709 · Gm23512
3entrez_idNCBI Entrez gene ID.整数50064min 11,287q1 —中位 192,651均值 2.4e+7q3 —max 1.4e+8
4gene_typeEnsembl biotype.字符型—不同值 37lncRNA · protein_coding · processed_pseudogene · TEC · miRNA · unprocessed_pseudogene · snRNA · snoRNA
5chromosomeChromosome name, scaffolds included, stored as text.字符型—不同值 387 · 2 · 1 · 5 · 11 · 4 · 6 · 3
6startGene start position in base pairs.整数—min 1q1 —中位 7.0e+7均值 7.3e+7q3 —max 2.0e+8
7endGene end position in base pairs.整数—min 68.0q1 —中位 7.0e+7均值 7.3e+7q3 —max 2.0e+8
8strand1 is forward. -1 is reverse.整数—min -1q1 —中位 1均值 0.00151q3 —max 1
9descriptionEnsembl gene description.字符型53不同值 77841novel transcript · novel protein · predicted gene, 20806 [Source:MGI Symbol;Acc:MGI:5434162] · predicted gene, 20809 [Source:MGI Symbol;Acc:MGI:5434165] · predicted gene, 21943 [Source:MGI Symbol;Acc:MGI:5439394] · predicted gene, 22170 [Source:MGI Symbol;Acc:MGI:5451947] · predicted gene, 25547 [Source:MGI Symbol;Acc:MGI:5455324] · predicted gene, 24458 [Source:MGI Symbol;Acc:MGI:5454235]
10speciesEnsembl species key.字符型—不同值 1mouse
11ensembl_versionEnsembl release this snapshot came from.整数—min 115.0q1 —中位 115.0均值 115.0q3 —max 115.0
12download_dateDate this snapshot was fetched.字符型—不同值 12026-04-17
载入已写好列类型
library(readr)

gene_ref_mouse <- read_csv(
  "https://assets.evanzhou.org/tessera/csv/gene_ref_mouse.csv",
  col_types = cols(
    ensembl_id      = col_character(),
    symbol          = col_character(),
    entrez_id       = col_integer(),
    gene_type       = col_character(),
    chromosome      = col_character(),
    start           = col_integer(),
    end             = col_integer(),
    strand          = col_integer(),
    description     = col_character(),
    species         = col_character(),
    ensembl_version = col_integer(),
    download_date   = col_character()
  )
)
URLhttps://assets.evanzhou.org/tessera/csv/gene_ref_mouse.csv

Source

Ensembl 的小鼠基因注释,用 evanverse::download_gene_ref("mouse") 导出。列结构和 gene_ref_human 完全一致,脚本也是同一份,只换了物种参数——所以两份可以直接摞起来或者对着比。

和人类那份结构相同但质量差别很大,这也是把两份都收进来的理由之一:

human mouse
symbol 缺失 40268(44%) 740(0.9%)
chromosome 不同值 528 38
entrez_id 缺失 54923(60%) 50064(63%)

小鼠注释里 symbol 几乎是满的,scaffold 也少得多——拿它练 ID 转换比人类那份顺利得多,但也因此练不到"映射不上怎么办"。要练缺失处理就用人类那份。

ensembl_id 同样不是唯一键。 78873 行里 78334 个不同 ID,539 行是扇出来的,原因和人类那份一样:同一个 Ensembl 基因对多个 Entrez ID,其余列完全相同。join 前先想清楚要不要 distinct()。

entrez_id 仍然缺六成,跨物种同源映射时这一列基本指望不上,走 symbol 或者专门的同源数据库更实际。

Use cases

  • 排序条形图:gene_type 构成,37 类,和人类那份对着看
  • 成对条形图:人鼠两份的基因类型数量对比
  • 染色体密度图:按 chromosome 分组、start 定位;小鼠只有 38 个值,不用先筛 scaffold
  • 直方图:基因长度(end − start)分布,跨度极大,要取对数

和人类那份并排画时,注意两个物种的基因总数和染色体条数都不同,比"数量"意义不大,比"构成比例"才对。

生成脚本R · 47 行
# 产物写到 ../csv/gene_ref_mouse.csv —— 脚本和 CSV 是 content/tessera/data/ 下固定的兄弟目录,
# 所以按脚本自身定位,不依赖你在哪个目录敲这条命令。csv/ 不进仓库(见 .gitignore)。
#
# Rscript 时路径在 --file= 里,source() 时在 sys.frame()$ofile 里,两种都要认:
# 只取其中一种的话,另一种跑法会静默地把 CSV 写到当前目录去。
script_dir <- local({
  arg <- grep("^--file=", commandArgs(trailingOnly = FALSE), value = TRUE)
  path <- if (length(arg)) sub("^--file=", "", arg[[1L]]) else sys.frame(1)$ofile
  dirname(normalizePath(path, mustWork = TRUE))
})
out_csv <- file.path(script_dir, "..", "csv", "gene_ref_mouse.csv")
dir.create(dirname(out_csv), recursive = TRUE, showWarnings = FALSE)

# Generate the mouse gene reference dataset for Tessera.
# Rscript content/tessera/data/script/gene_ref_mouse.R



gene_ref <- evanverse::download_gene_ref("mouse")

expected_cols <- c(
  "ensembl_id",
  "symbol",
  "entrez_id",
  "gene_type",
  "chromosome",
  "start",
  "end",
  "strand",
  "description",
  "species",
  "ensembl_version",
  "download_date"
)

missing_cols <- setdiff(expected_cols, names(gene_ref))
if (length(missing_cols) > 0L) {
  stop(
    "download_gene_ref() output is missing columns: ",
    paste(missing_cols, collapse = ", ")
  )
}

gene_ref <- gene_ref[, expected_cols]
utils::write.csv(gene_ref, out_csv, row.names = FALSE, na = "")

message("Wrote ", out_csv, " with ", nrow(gene_ref), " rows and ", ncol(gene_ref), " columns.")

表中统计由 scripts/profile_dataset.py 于 2026-08-03 数出。