我正在使用NCBI参考序列登录号,如变量a:
a <- c("NM_020506.1","NM_020519.1","NM_001030297.2","NM_010281.2","NM_011419.3", "NM_053155.2")
Run Code Online (Sandbox Code Playgroud)
要获得从biomart包我需要删除的信息.1,.2登录号等设备中后.我通常使用以下代码执行此操作:
b <- sub("..*", "", a)
# [1] "" "" "" "" "" ""
Run Code Online (Sandbox Code Playgroud)
但正如您所看到的,这不是这个变量的正确方法.谁能帮我这个?
我目前正在使用 R 开发一个生物信息学项目,在尝试使用该包时遇到错误biomaRt。安装包并将其加载到 R 中后,我尝试选择一个biomaRt数据库用于我的分析。
这是我收到错误时运行的代码:
\nlibrary(biomaRt)\nensembl <- useEnsembl(biomart = "ensembl", dataset = "hsapiens_gene_ensembl")\nRun Code Online (Sandbox Code Playgroud)\n错误信息:
\nError in `collect()`:\n! Failed to collect lazy table.\nCaused by error in `db_collect()`:\n! Arguments in `...` must be used.\n\xe2\x9c\x96 Problematic argument:\n\xe2\x80\xa2 ..1 = Inf\n\xe2\x84\xb9 Did you misspell an argument name?\n\nBacktrace:\n \xe2\x96\x86\n 1. \xe2\x94\x9c\xe2\x94\x80biomaRt::useEnsembl(biomart = "genes", dataset = "hsapiens_gene_ensembl")\n 2. \xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80biomaRt:::.getEnsemblSSL()\n 3. \xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80BiocFileCache::BiocFileCache(cache, ask = FALSE)\n 4. \xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80BiocFileCache:::.sql_create_db(bfc)\n 5. \xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80BiocFileCache:::.sql_validate_version(bfc)\n 6. \xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80BiocFileCache:::.sql_schema_version(bfc)\n 7. \xe2\x94\x82 …Run Code Online (Sandbox Code Playgroud) 我想使用的当前版本的包在 bioconductor 上失败了。然而,旧版本曾经可以工作。
我想知道如何安装特定版本的 bioconductor 包?
提前致谢。
在我的例子中,这个包叫做 biomaRt,失败的版本是 2.34.2,而 2.34.0 是成功的。
我在用 bioconductor 安装 biomaRt 时遇到问题。我已经使用 R 3.6 在 Rstudio 中安装了这个包而没有错误,但是在 conda 特定环境容器中使用 R 4.0,我在使用 RSQLite 时出现错误。
这里是这个消息:
x86_64-conda-linux-gnu-c++ -std=gnu++11 -I"/home/legrand-lab/anaconda3/envs/r4-base/lib/R/include" -DNDEBUG -I. -Ivendor -DRSQLITE_USE_BUNDLED_SQLITE -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_STAT4 -DSQLITE_SOUNDEX -DRCPP_DEFAULT_INCLUDE_CALL=false -DRCPP_USING_UTF8_ERROR_STRING -DBOOST_NO_AUTO_PTR -DSQLITE_MAX_LENGTH=2147483647 -DHAVE_USLEEP=1 -I'/home/legrand-lab/anaconda3/envs/r4-base/lib/R/library/plogr/include' -I'/home/legrand-lab/anaconda3/envs/r4-base/lib/R/library/Rcpp/include' -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /home/legrand-lab/anaconda3/envs/r4-base/include -I/home/legrand-lab/anaconda3/envs/r4-base/include -Wl,-rpath-link,/home/legrand-lab/anaconda3/envs/r4-base/lib -fvisibility=hidden -fpic -fvisibility-inlines-hidden -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/legrand-lab/anaconda3/envs/r4-base/include -fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/r-base-split_1616773775410/work=/usr/local/src/conda/r-base-4.0.3 -fdebug-prefix-map=/home/legrand-lab/anaconda3/envs/r4-base=/usr/local/src/conda-prefix -c SqliteColumnDataSource.cpp -o SqliteColumnDataSource.o
In file included from vendor/boost/math/special_functions/sign.hpp:16,
from vendor/boost/lexical_cast/detail/inf_nan.hpp:34,
from vendor/boost/lexical_cast/detail/converter_lexical_streams.hpp:63,
from vendor/boost/lexical_cast/detail/converter_lexical.hpp:54,
from vendor/boost/lexical_cast/try_lexical_convert.hpp:44,
from …Run Code Online (Sandbox Code Playgroud) 我有一个表达式集矩阵,其行名是我认为格式为 GENCODE ID 的格式,例如“ENSG00000000003.14”“ENSG00000000457.13”“ENSG00000000005.5”等。我想将它们转换为gene_symbol,但我不确定最好的方法,特别是因为我认为是版本“.14”或“.13”。我应该先修剪点后面的所有 ID,然后使用 biomaRt 进行转换吗?如果是这样,最有效的方法是什么?有没有更好的方法来获取gene_symbol?
非常感谢你的帮助
我有一个长基因数据框架和各种形式的id(例如OMIM,Ensembl,Genatlas).我想获得与每个基因相关的所有SNP的列表.(这与这个问题相反.)
到目前为止,我发现的最佳解决方案是使用biomaRt包(bioconductor).我需要在这里做一种查找的例子.符合我的目的,这是我的代码:
library(biomaRt)
#load the human variation data
variation = useEnsembl(biomart="snp", dataset="hsapiens_snp")
#look up a single gene and get SNP data
getBM(attributes = c(
"ensembl_gene_stable_id",
'refsnp_id',
'chr_name',
'chrom_start',
'chrom_end',
'minor_allele',
'minor_allele_freq'),
filters = 'ensembl_gene',
values ="ENSG00000166813",
mart = variation
)
Run Code Online (Sandbox Code Playgroud)
这将输出一个如下所示的数据框:
ensembl_gene_stable_id refsnp_id chr_name chrom_start chrom_end minor_allele minor_allele_freq
1 ENSG00000166813 rs8179065 15 89652777 89652777 T 0.242412
2 ENSG00000166813 rs8179066 15 89652736 89652736 C 0.139776
3 ENSG00000166813 rs12899599 15 89629243 89629243 A 0.121006
4 …Run Code Online (Sandbox Code Playgroud) 我有一些基因组位置,我想使用biomaRt R包在Ensembl的基础上注释这些位置(查找Ensembl基因ID,外显子,内含子等特征)。
我数据的一部分
chr start stop strand
chr10 100572320 100572373 -
chr10 100572649 100572658 +
Run Code Online (Sandbox Code Playgroud) 我想从基因符号(例如:TTN)和基因ID(例如:ENSG00000155657)获取人类基因组的基因位置。我想使用biomaRtR 包来做到这一点。我该怎么做?
biomart ×8
r ×8
bioconductor ×3
annotations ×1
boost ×1
dbplyr ×1
regex ×1
rsqlite ×1
string ×1