Open nakane-scc opened 3 years ago
前述のエラーはUbuntuを使った時のもので、改めてマックでやってみたところ、 Rの4.0.5だと、91ページ最初の
if (!requireNamespace("BiocManager", quietly = TRUE))
- install.packages("BiocManager") BiocManager::install("biomaRt") というところで、以下のようなエラーが発生します。
Bioconductor version 3.12 (BiocManager 1.30.13), R 4.0.5 (2021-03-31) Installing package(s) 'BiocVersion', 'biomaRt' also installing the dependencies ‘fastmap’, ‘bit’, ‘cachem’, ‘fansi’, ‘cli’, ‘utf8’, ‘bit64’, ‘blob’, ‘memoise’, ‘pkgconfig’, ‘Rcpp’, ‘plogr’, ‘ellipsis’, ‘lifecycle’, ‘rlang’, ‘vctrs’, ‘sys’, ‘assertthat’, ‘purrr’, ‘tibble’, ‘tidyselect’, ‘withr’, ‘generics’, ‘pillar’, ‘BiocGenerics’, ‘Biobase’, ‘IRanges’, ‘DBI’, ‘RSQLite’, ‘S4Vectors’, ‘hms’, ‘prettyunits’, ‘R6’, ‘crayon’, ‘glue’, ‘magrittr’, ‘stringi’, ‘curl’, ‘jsonlite’, ‘mime’, ‘askpass’, ‘dbplyr’, ‘dplyr’, ‘XML’, ‘AnnotationDbi’, ‘progress’, ‘stringr’, ‘httr’, ‘openssl’, ‘BiocFileCache’, ‘rappdirs’, ‘xml2’
readRDS(dest) でエラー: コネクションからの読み取りエラーが発生しました
Rを3.6.3にすると、最初のところでエラーが出ることはなくなるのですが、「#遺伝子IDと遺伝子名の対応情報を取得」するところで、
t2g <- biomaRt::getBM(attributes = c("ensembl_transcript_id", "ensembl_gene_id", "external_gene_name"), mart = mart) と入力すると、
UseMethod("filter") でエラー: 'filter' をクラス "c('tbl_SQLiteConnection', 'tbl_dbi', 'tbl_sql', 'tbl_lazy', 'tbl')" のオブジェクトに適用できるようなメソッドがありません
というエラーが発生し、やはり先に進めません。
対応策をご教授いただければ幸いです。
エラーではないのですが、 t2g[t2g[,3] == "", "ext_gene"] <- "NA" というコマンドの意味がわからないので、どういう操作をしているのか、教えていただけないでしょうか。
お返事遅くなって申し訳ございません。 エラーを再現できずにおります。Google検索でも解決できそうな情報は見つけられておりません。 いまこちらから提示できる案は下記の手順で、 0.テスト用に仮想環境(test)を準備する
conda create -n test
conda activate test
1.AnacondaでRをインストールする(Anaconda経由でのインストールが済んでいたら結構です)
conda install -c conda-forge r-base=4.0.5
2.AnacondaでRパッケージ(biomaRt)をインストールする
conda install -c conda-forge r-base=4.0.5
というものです。
これにより、
R
library(biomaRt)
library(dplyr)
ensembl = biomaRt::useEnsembl(biomart="ensembl")
biomaRt::listDatasets(ensembl)
mart <- biomaRt::useMart(biomart = "ENSEMBL_MART_ENSEMBL", dataset = "hsapiens_gene_ensembl", host = 'ensembl.org')
の一連の処理が正常に動くかと思います。
t2g[t2g[,3] == "", "ext_gene"] <- "NA" こちらは遺伝子シンボルが空欄になっている遺伝子が含まれており後々トラブルのもとになるかと思ったのでNAとしました。 t2g[t2g$ext_gene == "","ext_gene"]=NA のほうが良かったかなとも思います。
また、次の
よろしくお願いいたします。