Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Memisahkan Bingkai Data Pandas Berdasarkan Ambang Nilai Lajur?

Bagaimana untuk Memisahkan Bingkai Data Pandas Berdasarkan Ambang Nilai Lajur?

DDD
DDDasal
2024-10-19 22:30:29763semak imbas

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

Memisahkan Bingkai Data Panda dengan Nilai Lajur

Pertimbangkan senario di mana anda mempunyai DataFrame dengan lajur bernama 'Jualan'. Anda ingin mengasingkan DataFrame ini kepada dua berdasarkan nilai dalam lajur 'Jualan', supaya DataFrame pertama mengandungi data yang 'Jualan' kurang daripada ambang yang ditentukan, manakala DataFrame kedua termasuk data yang 'Jualan' lebih besar daripada atau sama dengan ambang.

Untuk mencapai ini, anda boleh memanfaatkan pengindeksan boolean dalam Pandas. Berikut ialah contoh:

<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)

Output:

   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

Sebagai alternatif, anda boleh menggunakan operator topeng songsang (~) untuk mencapai hasil yang sama:

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

Ini akan mempunyai kesan yang sama seperti contoh sebelumnya.

Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Bingkai Data Pandas Berdasarkan Ambang Nilai Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn