1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 import fastselect
18 import sys
19
20
22
24
25
26 self.sequence = [float(item) for item in sequence]
27
28
30
31 for item in self.sequence:
32 print item
33
34
36 if len(self.sequence) < 1:
37 return None
38 else:
39 return sum(self.sequence)
40
41
43 return len(self.sequence)
44
45
47 if len(self.sequence) < 1:
48 return None
49 else:
50 return min(self.sequence)
51
52
54 if len(self.sequence) < 1:
55 return None
56 else:
57 return max(self.sequence)
58
59
61 if len(self.sequence) < 1:
62 return None
63 else:
64 return sum(self.sequence) / len(self.sequence)
65
66
72
73
75 if len(self.sequence) < 1:
76 return None
77 else:
78 avg = self.avg()
79 sdsq = sum([(i - avg) ** 2 for i in self.sequence])
80 stdev = (sdsq / (len(self.sequence) - 1 or 1)) ** .5
81 return stdev
82
83
85 if len(self.sequence) < 1:
86 return None
87 else:
88 percent = percentile / 100.0
89 if (percentile >= 100):
90 sys.stderr.write('ERROR: percentile must be < 100. you supplied: %s\n'% percentile)
91 sys.exit(1)
92
93 return fastselect.select(int(len(self.sequence) * percent), self.sequence)
94