2020年8月26日水曜日

ハプロタイプ;シーケンス名変更;「.fasta」を出力

午前
・標本整理

午後
・授業準備
・データ解析

かなり苦戦したが、どうにかできるようになった。

library(haplotypes)を用いてハプロタイプごとにシーケンスをまとめ、さらに、シーケンス名を変更したのち、「.fasta」を出力する方法。
#library(haplotypes) #「::」で指定する
#library(ape) #「::」で指定する
x <- haplotypes::read.fas("???.fasta")
h <- haplotypes::haplotype(x) #to class"haplotype"
#h@nhap #ハプロタイプ数の確認
h_dna <- haplotypes::as.dna(h) #to class"DNA"
names(h_dna) <- c(1:34) #シーケンス名の変更;class"DNA"で使う
h_dnabin <- haplotypes::as.DNAbin(h_dna) #to class"DNAbin"
ape::write.dna(h_dnabin, file = 'test.fasta', format = 'fasta')
library()は使わず、「::」で指定した方が良い?詳しく検証していないが、2つのlibraryで同じ関数名が使われている?

関数が「class」に依存するので、順番を間違えるとハマる。「class:haplotype」→「class:DNA」→「class:DNAbin」で「ape::write.dna」が実行できる。

また、「names()」は「class:DNA」で使う。