0
파이썬 3.4.1을 사용하고 있습니다. itertools으로 순열 테스트를 다시 작성하십시오. here을 통해 발견이에 대한파이썬에서 순열 테스트를 코딩 할 때 실수는 어디에 있습니까?
인기 코드는 이것이다 :
from itertools import combinations as comb
def permutationTest(a, b):
ab = a + b
Tobs = sum(a)
under = 0
for count, perm in enumerate(comb(ab, len(a)), 1):
if sum(perm) <= Tobs:
under += 1
return under * 100./count
treatmentGroup = [9.1, 10.3, 11.0, 11.5, 11.9]
controlGroup = [8.1, 8.4, 9.2, 9.4]
under = permutationTest(treatmentGroup, controlGroup)
averageTreatment = sum(treatmentGroup)/float(len(treatmentGroup))
averageControl = sum(controlGroup)/float(len(controlGroup))
print("under=%.2f%%, over=%.2f%%" % (under, 100. - under))
print ('The average of threatment group is', averageTreatment)
print ('The average of control group is', averageControl)
보시다시피,이 두 가지 (처리 및 제어) 평소와 같이 정의 된 그룹. 나는 또한 here 이상의 대학에서 예를 들었다. 내 문제는 지금 : 알다시피, 결과는 다릅니다.
실수는 어디에 있습니까? (파이썬 스크립트에있는 것 같습니다 ...)
고마워요!
@xfer 당신은 실제로 diffrence가 어디 있는지 말해 줄 수 있습니까? 원하는 출력을 표시하십시오. –
필자가보기에 파이썬 프린트 아웃은 = 98.41 %, over = 1.59 %입니다. 문서에 따르면 나는 또한 그것 2,38 %해야 연결되어 있습니다. –