組み合わせ

組み合わせ5C2は、以下のようにして求めます。
>>> import itertools
>>> list(itertools.combinations(data, 2))
[(1, 2), (1, 3), (1, 4), (1, 5), (2, 3), (2, 4), (2, 5), (3, 4), (3, 5), (4, 5)]

組み合わせの数だけ分かれば良い場合は、
>>> len(list(itertools.combinations(data, 2)))
10

または、実際の組み合わせを生成しなくて良い場合は、
>>> import math
>>> math.factorial(len(data)) / (math.factorial(len(data) - 2) * math.factorial(2))
10.0

で求められます。

0 件のコメント:

コメントを投稿