私は次のようなデータが含まれている非常に大規模なDFがありますので、私はチャンクに分割し、それを解析する必要があるサイズの可変チャンクサイズパンダDATAFRAME
import pandas as pd
df = pd.DataFrame()
df['CODE'] = [1,2,3,1,2,4,2,2,4,5]
df["DATA"] = [ 'AA', 'BB', 'CC', 'DD', 'AA', 'BB', 'EE', 'FF','GG', 'HH']
df.sort_values('CODE')
df
CODE DATA
0 1 AA
3 1 DD
1 2 BB
4 2 AA
6 2 EE
7 2 FF
2 3 CC
5 4 BB
8 4 GG
9 5 HH
を。 しかし、CODE列に含まれるequals要素は、異なるチャンクで終わるべきではなく、サイズを超えても前のチャンクに追加されるべきです。私は4列のチャンクサイズを選択した場合
基本的には最初のチャンクは「2」を持つすべての要素を含むとするまで増加させることができた:
chunk1:
CODE DATA
0 1 AA
3 1 DD
1 2 BB
4 2 AA
6 2 EE
7 2 FF
私は次のようにチャンクとのグループ化に関するいくつかの記事を見つけました:上記は、同じサイズのチャンクを提供し、私はCODE欄にアカウントに値をとるスマートチャンキングを必要とするしかし
split dataframe into multiple dataframes based on number of rows
。
どうすればいいですか?
などですが、N = 2の場合は、CODEが2の行を分割することになります。代わりに、それらを同じチャンクに入れておきます。 – user2320577
うーん、大きなグループのデータを扱うため、各グループを 'CODE'カラムで分割する必要があります。ですから、1000のような大きな 'N'を使うことができます。そして、1000行ずつ分割します。または私は何かが行方不明ですか? – jezrael
例えばフロア分割を使用する場合。 'N = 3 'を試して、サイズ' 1'の最後のグループを取得してください。ほとんどのグループは同じ長さになりますが、最後のほうが小さくなります。 – jezrael