Python を使用する本からアプリオリ機械学習アルゴリズムを学習しようとしていますが、その学習の一環として、現在、次の問題に悩まされています。
次のコード構成は正常に機能するようです。
Ck = [[1], [2], [3], [4], [5]]
for tranid in range(10):
for candidate in Ck:
print("Printing candidate value: ", candidate)
ただし、次の場合は機能しません。
Ck = [[1], [2], [3], [4], [5]]
Ck2 = map(frozenset, Ck)
for tranid in range(10):
for candidate in Ck2:
print("Printing candidate value: ", candidate)
元の iterable のすべての要素をfrozensetにマップすると、内側のループ( 「Ck2の候補」 )が1回しか実行されないことに気付きました。その後、実行されることはありません。上記のコードは、frozenset を使用せずに、内側のループを 10 回ループします。ただし、frozenset をマップすると、内側のループを 1 回だけ実行できます。
これを修正するのを手伝ってください。この本では、アルゴリズムの目的で変更可能にしたくないため、反復可能な値をfrozensetにマップしています。そのまま従おうとしているだけです。
Anaconda (Spyder) で Python 3.5.1 を使用しています。
私はPythonと機械学習の両方が初めてなので、助けてください。
よろしくお願いします、マヘシュ。