私は541列のDataFrame dfを持っています。列名のすべてのユニークなペアを個別のDataFrameの行に8回繰り返し保存する必要があります。パンダのDataFrameにアクセスする最も速い方法は何ですか?
私は空のDataFrame fpを作成し、dfの列名を2回ループし、8行目ごとに挿入し、空白を最後に使用可能な値で埋めると考えました。
私はこれをやろうとしたが、どれくらいの時間がかかっているのか困惑していた。 541のコラムで、私は146,611回書く必要がありますが、それは20分を十分に費やしています。これはちょうどデータアクセスのために大変なようです。問題はどこにあり、どのように解決できますか? Pandasが列との相関行列を生成するよりも時間がかかりますので、私は何か間違っていなければなりません。ここで
は、私が何を意味するかの再現性の例です:
fp = np.empty(shape = (146611, 10))
fp.fill(np.nan)
fp = pd.DataFrame(fp)
%timeit for idx in range(0, len(fp)): fp.iloc[idx, 0] = idx
# 1 loop, best of 3: 22.3 s per loop