ホームページ >バックエンド開発 >Python チュートリアル >Pandas の列値に基づいて DataFrame を分割するにはどうすればよいですか?
Pandas: 列の値に基づいて DataFrame を分割する
Pandas DataFrame を操作する場合、次の値に基づいてデータをサブセットに分割する必要があります。特定の列の値。一般的なシナリオの 1 つは、しきい値に基づいてデータフレームを分割することです。これを実現する方法は次のとおりです。
ブール マスクの作成
最も簡単な方法では、比較演算子を使用してブール マスクを作成します。マスクを DataFrame に適用すると、マスクで設定された条件を満たすデータを含む 2 つの DataFrame を作成できます。
たとえば、売上値が以下の値と大きい値を含む 'Sales' という名前の列で DataFrame を分割するには、または指定されたしきい値と等しい 's':
<code class="python">import pandas as pd df = pd.DataFrame({'Sales':[10,20,30,40,50], 'A':[3,4,7,6,1]}) print(df) s = 30 # Boolean mask for rows where Sales >= s sales_ge_mask = df['Sales'] >= s # DataFrame with Sales >= s df1 = df[sales_ge_mask] print(df1) # Boolean mask for rows where Sales < s sales_lt_mask = df['Sales'] < s # DataFrame with Sales < s df2 = df[sales_lt_mask] print(df2)
「~」演算子を使用してマスクを反転し、条件の否定に基づいて DataFrame を分割できます。
<code class="python"># Boolean mask for rows where Sales < s sales_lt_mask = df['Sales'] < s # DataFrame with Sales >= s df1 = df[~sales_lt_mask] print(df1) # DataFrame with Sales < s df2 = df[sales_lt_mask] print(df2)</code>
このメソッドは、調整された条件に基づいて DataFrame のサブセットを効率的に作成します。
以上がPandas の列値に基づいて DataFrame を分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。