1
データフレームの各列をランク付けする必要があります。私は現在、以下のコードを使用しています:パンダススレッドプールを使用して巨大なデータセットの複数の列をランク付け
for x in range(1,len(cols)):
data[cols[x]] = data[cols[x]].rank(ascending=0)
これは小さなデータセットで動作します。私は50,000以上の列と2万行を持っています。スレッドプールでより速く達成できる方法はありますか?以下のコードを試してみましたが、動作しませんでした。それは空のセットを返す。
cols = rankDset.columns.tolist()
def rank_columns(c):
rankDset[c] = rankDset[c].rank(ascending=0)
def parallelDataframe(df, func):
pool = Pool(8)
pool.map(func, cols)
pool.close()
pool.join()
parallelDataframe(rankDset, rank_columns)
ありがとうございます。出来た! –