Rのtximportという、ちょっとマニアックなパッケージについての質問になります。
下記の様にカレントディレクトリにいくつかディレクトリ、ファイルが格納されています。
R
1> setwd("~/iziz/practice/kallisto2") 2> file.path() 3character(0) 4> list.files() 5 [1] "kallisto_sample2.txt" "path.txt" "SRR1550989" "SRR1551005" 6 [5] "SRR1551011" "SRR1551050" "SRR1551057" "SRR1551071" 7 [9] "SRR1551091" "t2g2.txt" "target2gene.txt" 8> list.dirs() 9[1] "." "./SRR1550989" "./SRR1551005" "./SRR1551011" "./SRR1551050" "./SRR1551057" "./SRR1551071" 10[8] "./SRR1551091" 11 12#SRRから始まる各ファイルにtsvファイルが保存されている 13> setwd("~/kitaz/practice/kallisto4/SRR1551071") 14> list.files() 15[1] "abundance.h5" "abundance.tsv" "run_info.json" 16
このtsvファイルをtximportというパッケージを使って読み取りたいのですが、下記の様にファイルのパスを直接入力すると読み込めます。
R
1> library(tximport) 2> txi <- tximport('SRR1551071/abundance.tsv', type = 'kallisto', txOut = TRUE)
ここで、SRRから始まる全てのディレクトリに保存されているtsvファイルを同じ様に読み込みたいのですが、方法を教えて頂けないでしょうか?
<以下、試したこと>
マニュアル等ではファイルのパスをテキスト形式でまとめてそれを読み込むということになっていますが、エラーが出ます。
R
1> path_list 2 V1 31 SRR1550989/SRR1550989-abundance.tsv 42 SRR1551005/SRR1551005-abundance.tsv 53 SRR1551011/SRR1551011-abundance.tsv 64 SRR1551050/SRR1551050-abundance.tsv 75 SRR1551057/SRR1551057-abundance.tsv 86 SRR1551071/SRR1551071-abundance.tsv 97 SRR1551091/SRR1551091-abundance.tsv 10 11> txi <- tximport(path_list, type = 'kallisto', txOut = TRUE) 12 file.exists(files) でエラー: 'file' 引数が不正です 13
下記リンクを参考に、下記の様なコードも試しましたが、うまくいきません。
R
1> kallisto.files <- file.path(list.files('.', pattern = 'exp_kallisto'), 'abundance.tsv') 2> txi <- tximport(kallisto.files, type = "kallisto", txOut = TRUE)
file.pathとかlist.fileの使い方がよくわかっていませんが、要はパスを指定してtximportに読ませているということだと思うのですが。
何卒よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。