首页 >后端开发 >Python教程 >如何根据 Pandas 中的列值划分 DataFrame?

如何根据 Pandas 中的列值划分 DataFrame?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-19 22:34:29407浏览

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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn