mirror of
https://github.com/metabarcoding/obitools4.git
synced 2025-06-29 16:20:46 +00:00
Adds a reader for NGS filter files and change some API for the apat library
This commit is contained in:
34
cmd/obitools/obimultiplex/main.go
Normal file
34
cmd/obitools/obimultiplex/main.go
Normal file
@ -0,0 +1,34 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obioptions"
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obitools/obiconvert"
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obitools/obipcr"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
// f, err := os.Create("cpu.pprof")
|
||||
// if err != nil {
|
||||
// log.Fatal(err)
|
||||
// }
|
||||
// pprof.StartCPUProfile(f)
|
||||
// defer pprof.StopCPUProfile()
|
||||
|
||||
// ftrace, err := os.Create("cpu.trace")
|
||||
// if err != nil {
|
||||
// log.Fatal(err)
|
||||
// }
|
||||
// trace.Start(ftrace)
|
||||
// defer trace.Stop()
|
||||
|
||||
optionParser := obioptions.GenerateOptionParser(obipcr.OptionSet)
|
||||
|
||||
_, args, _ := optionParser(os.Args)
|
||||
|
||||
sequences, _ := obiconvert.ReadBioSequencesBatch(args...)
|
||||
amplicons, _ := obipcr.PCR(sequences)
|
||||
obiconvert.WriteBioSequencesBatch(amplicons, true)
|
||||
}
|
@ -1,7 +1,9 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"log"
|
||||
"os"
|
||||
"runtime/trace"
|
||||
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obioptions"
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obitools/obiconvert"
|
||||
@ -10,6 +12,7 @@ import (
|
||||
|
||||
func main() {
|
||||
|
||||
// go tool pprof -http=":8000" ./obipairing ./cpu.pprof
|
||||
// f, err := os.Create("cpu.pprof")
|
||||
// if err != nil {
|
||||
// log.Fatal(err)
|
||||
@ -17,12 +20,13 @@ func main() {
|
||||
// pprof.StartCPUProfile(f)
|
||||
// defer pprof.StopCPUProfile()
|
||||
|
||||
// ftrace, err := os.Create("cpu.trace")
|
||||
// if err != nil {
|
||||
// log.Fatal(err)
|
||||
// }
|
||||
// trace.Start(ftrace)
|
||||
// defer trace.Stop()
|
||||
// go tool trace cpu.trace
|
||||
ftrace, err := os.Create("cpu.trace")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
trace.Start(ftrace)
|
||||
defer trace.Stop()
|
||||
|
||||
optionParser := obioptions.GenerateOptionParser(obipcr.OptionSet)
|
||||
|
||||
|
@ -6,7 +6,8 @@ import (
|
||||
"os"
|
||||
"runtime/trace"
|
||||
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obialign"
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obiapat"
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obiformats"
|
||||
"git.metabarcoding.org/lecasofts/go/obitools/pkg/obiseq"
|
||||
)
|
||||
|
||||
@ -41,27 +42,17 @@ func main() {
|
||||
// }
|
||||
|
||||
A := []byte("ccgcctccttagaacaggctcctctagaaaaccatagtgggatatctaaagaaggcggagatagaaagagcggttcagcaggaatgccgagatggacggcgtgtgacg")
|
||||
B := []byte("cgccaccaccgagatctacactctttccctacacgacgctcttccgatctccgcctccttagaacaggctcctctagaaaagcatagtggggtatctaaaggaggcgg")
|
||||
// B := []byte("cgccaccaccgagatctacactctttccctacacgacgctcttccgatctccgcctccttagaacaggctcctctagaaaagcatagtggggtatctaaaggaggcgg")
|
||||
sA := obiseq.MakeBioSequence("A", A, "")
|
||||
sB := obiseq.MakeBioSequence("B", B, "")
|
||||
// sB := obiseq.MakeBioSequence("B", B, "")
|
||||
|
||||
fmt.Println(string(sA.Sequence()))
|
||||
fmt.Println(sA.Qualities())
|
||||
fmt.Println(string(sB.Sequence()))
|
||||
fmt.Println(sB.Qualities())
|
||||
pat, _ := obiapat.MakeApatPattern("TCCTTCCAACAGGCTCCTC", 3)
|
||||
as, _ := obiapat.MakeApatSequence(sA, false)
|
||||
fmt.Println(pat.FindAllIndex(as))
|
||||
|
||||
score, path := obialign.PELeftAlign(sA, sB, 2, obialign.NilPEAlignArena)
|
||||
fmt.Printf("Score : %d Path : %v\n", score, path)
|
||||
score, path = obialign.PERightAlign(sA, sB, 2, obialign.NilPEAlignArena)
|
||||
fmt.Printf("Score : %d Path : %v\n", score, path)
|
||||
file, _ := os.Open("sample/wolf_diet_ngsfilter.txt")
|
||||
xxx, _ := obiformats.ReadNGSFilter(file)
|
||||
|
||||
fmt.Println(string(sA.Sequence()))
|
||||
sA.ReverseComplement(true)
|
||||
fmt.Println(string(sA.Sequence()))
|
||||
fmt.Println(string(sA.Id()))
|
||||
|
||||
sA.Reset()
|
||||
fmt.Println(sA.Length())
|
||||
fmt.Println(sA.String())
|
||||
fmt.Println(xxx)
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user