ホームページ >バックエンド開発 >Python チュートリアル >列値のしきい値に基づいて Pandas データフレームを分割するにはどうすればよいですか?

列値のしきい値に基づいて Pandas データフレームを分割するにはどうすればよいですか?

DDD
DDDオリジナル
2024-10-19 22:30:29934ブラウズ

How to Split a Pandas DataFrame Based on a Column Value Threshold?

列値による Pandas DataFrame の分割

「Sales」という名前の列を持つ DataFrame があるシナリオを考えてみましょう。 「Sales」列の値に基づいてこのデータフレームを 2 つに分離し、最初のデータフレームには「Sales」が指定したしきい値より小さいデータが含まれ、2 番目のデータフレームには「Sales」が指定したしきい値より大きいデータが含まれるようにしたいと考えています。

これを実現するには、Pandas でブール型インデックスを利用します。以下に例を示します。

<code class="python">import pandas as pd

# Create a sample DataFrame
df = pd.DataFrame({'Sales': [10, 20, 30, 40, 50], 'A': [3, 4, 7, 6, 1]})
print(df)

# Set the threshold (s)
s = 30

# Split the DataFrame based on the 'Sales' column
df1 = df[df['Sales'] >= s]
print(df1)

df2 = df[df['Sales'] < s]
print(df2)

出力:

   A  Sales
0  3     10
1  4     20
2  7     30
3  6     40
4  1     50

   A  Sales
2  7     30
3  6     40
4  1     50

   A  Sales
0  3     10
1  4     20

または、逆マスク演算子 (~) を使用して同じ結果を得ることができます:

<code class="python">mask = df['Sales'] >= s
df1 = df[mask]
df2 = df[~mask]
print(df1)
print(df2)</code>

これは前の例と同じ効果があります。

以上が列値のしきい値に基づいて Pandas データフレームを分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。