From ce39b5fd65a91e241b2edbb9fd6a9a12967a064d Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Sat, 15 Oct 2022 12:32:28 -0700 Subject: ref(seqstat): rewrite from go to python This is a simple script, there's no benefit in having this in go. Having it Python makes it easier to extend with panda or other libraries in the future if I need more statistics too. --- tools/seqstat/seqstat.go | 63 ------------------------------------------------ 1 file changed, 63 deletions(-) delete mode 100644 tools/seqstat/seqstat.go (limited to 'tools/seqstat/seqstat.go') diff --git a/tools/seqstat/seqstat.go b/tools/seqstat/seqstat.go deleted file mode 100644 index 8709fa4..0000000 --- a/tools/seqstat/seqstat.go +++ /dev/null @@ -1,63 +0,0 @@ -package main - -import ( - "bufio" - "flag" - "fmt" - "os" - "strconv" - "strings" -) - -var ( - stats = flag.Bool("S", false, "Display statistics about the sequence.") -) - -func main() { - flag.Parse() - - flag.Usage = func() { - fmt.Fprintf(os.Stderr, "usage: [-S] ") - flag.PrintDefaults() - } - - elements := argsToElements(flag.Args()) - - if len(elements) < 1 { - scanner := bufio.NewScanner(os.Stdin) - var e []string - for scanner.Scan() { - e = append(e, strings.Split(scanner.Text(), " ")...) - } - elements = argsToElements(e) - } - - seq := newSequence(elements) - - fmt.Println(string(seq.histogram())) - - if *stats { - fmt.Printf("min: %f\n", seq.min) - fmt.Printf("max: %f\n", seq.max) - fmt.Printf("avg: %f\n", seq.avg()) - fmt.Printf("p50: %f\n", seq.p50()) - fmt.Printf("p90: %f\n", seq.p90()) - fmt.Printf("p99: %f\n", seq.p99()) - fmt.Printf("p999: %f\n", seq.p999()) - fmt.Printf("ordered sequence: %v\n", seq.elementsSorted) - } -} - -// converts the input to float64 -func argsToElements(args []string) []float64 { - elements := make([]float64, len(args)) - - for i, input := range args { - num, err := strconv.ParseFloat(input, 64) - if err != nil { - panic(err) - } - elements[i] = num - } - return elements -} -- cgit 1.4.1