のリストを転置するための効率的な方法:私はリストのリストを持っているリスト
私はに変換する必要がありx = [ [4, ‘c’, ‘b’, ‘d’], [2, ‘e’, ‘c’, ‘a’], [5, ‘a’, ‘c’] ]
:
x1 = [ [‘c’, 4, 2, 5], [‘b’, 4], [‘d’, 4], [‘e’, 2], [‘a’, 2, 5] ]
説明:明らかに
'c' appears in lists starting with 4, 2, 5
'b' appears in only the list starting with 4
'd' appears in only the list starting with 4
...
これはおもちゃの例ですが、私の実際のリストはフラットファイルで約30Mbです。
私は2つの入れ子になったfor-loopsで試していましたが、MacBook Pro(8GB RAM)のファイルの5%だけで約5時間かかりました。
効率的な方法はありますか?
はあなたが試みを試みたがありますか?助けを求める前に何かを試してみないと – depperm
xをx1に変換するために使用されているロジックに従うことができず、ランダムに見えます。 – sniperd
私はここでパターンを見つけることさえできません。 '2'はなぜ入力に1回だけ出現しますが、出力には3回出現するのですか? '4'と同じですが、' 5'は2回しか出現しません。 –