Few questions. I have a module "combin" which contains "Combin" and "Prob" classes. This is the "Prob" class:
class Prob:
def binprob(self,n,k,p):
fewerthan = sum([Combin().kcomb(n,i)*((p**i)*(1-p)**(n-i)) for i in
range(k)])
exact = Combin().kcomb(n,k)*((p**k)*(1-p)**(n-k))
notexact = 1 - exact
atleast = 1 - fewerthan
atmost = fewerthan + exact
morethan = 1 - atmost
T0 = (('Fewer Than:', fewerthan),
('At Least:', atleast),
('Exactly:', exact),
('Not Exactly:', notexact),
('At Most:', atmost),
('More Than:', morethan))
for t in T0:
print t[0].rjust(12),'\t',t[1]
Is the way I've used the "Combin" class considered correct/appropriate in
the "binprob" method? If not, what is the standard usage?
Also, I'm trying to get my results to print close to this(.i.e., I would
like the first column to be right justified and the second column to be
exactly as it is):
Fewer Than: 0.376953125
At Least: 0.623046875
Exactly: 0.24609375
Not Exactly: 0.75390625
At Most: 0.623046875
More Than: 0.376953125
but it comes out like this:
Fewer Than: 0.376953125
At Least: 0.623046875
Exactly: 0.24609375
Not Exactly: 0.75390625
At Most: 0.623046875
More Than: 0.376953125
I feel like I'm missing something obvious here and apologize in advance if I
am, but I just can't figure it out. Any help would be appreciated. BTW,
I'm not using a dictionary because I want the results to print exactly in
the order specified and that seemed the simplest way. Also, I used
rjust(12) because len("Not Exactly:") = 12 etc.
hawk
<<attachment: winmail.dat>>
-- http://mail.python.org/mailman/listinfo/python-list
