首頁 > 後端開發 > Python教學 > 如何根據 Pandas 中的列值劃分 DataFrame?

如何根據 Pandas 中的列值劃分 DataFrame?

Mary-Kate Olsen
發布: 2024-10-19 22:34:29
原創
399 人瀏覽過

How to Divide a DataFrame Based on Column Values in Pandas?

Pandas:根據列值劃分DataFrame

使用Pandas DataFrame 時,需要根據列值將資料拆分為子集特定的列值。一個常見的場景是根據閾值拆分 DataFrame。實作方法如下:

建立布林遮罩

最簡單的方法涉及使用比較運算子建立布林遮罩。透過將遮罩套用至 DataFrame,您可以建立兩個 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中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板