R代码如下
#BiocManager::install('seqinr') # 如果没安装过这包,先安装
library(seqinr)
library(stringr)
fasta <- read.fasta(file = "C:\\Users\\zhang\\Desktop\\Zea_mays.AGPv4.dna.chromosome.1.fa",
as.string = TRUE,
forceDNAtolower = FALSE) # 修改上面的路径,fasta格式文件
class(fasta)
a1 <- fasta[[2]][1] # 这里的[1]不用改,[[2]]表示排在第二的染色体,玉米中是2号染色体
str(a1)
a1 <- strsplit(a1,"")
str(a1)
b <- read.table("clipboard",header=F) # 从excel复制需要的染色体位置信息
# b <- c(1,2,3,4,5)
k <- data.frame(1:nrow(b))
for (i in 1:nrow(b)){
txt <- paste0("k[",i,",1] <- a1[[1]][as.numeric(b[",i,",1])]")
eval(parse(text=txt))
}
write.table(k,"C:\\Users\\zhang\\Desktop\\123.txt",row.names=F,col.names=F,sep="\t",quote=F)
Excel染色体位置信息如下,注意,这里没有包含染色体信息,需要每个染色体单独做。
| 82048 |
| 82052 |
| 82071 |
| 82079 |
| 82089 |
| 82097 |
| 82100 |
| 82104 |
| 82107 |
| 82136 |
| 82148 |
| 82185 |
| 114009 |
| 114027 |
| 114043 |
| 114092 |
| 114103 |
| 114168 |
发表评论