📜  Pandas 按行或列的总和过滤数据框(1)

📅  最后修改于: 2023-12-03 15:18:15.008000             🧑  作者: Mango

Pandas 按行或列的总和过滤数据框

Pandas是一个开源Python数据分析库,它提供了高效的数据处理工具,支持多种文件格式的导入和导出,包括CSV、Excel、SQL、JSON、HTML等。本文主要介绍如何使用Pandas按行或列的总和过滤数据框。

按行或列的总和过滤数据框

Pandas提供了多种方法来按行或列的总和过滤数据框。下面我们将分别介绍这些方法。

按行求和

我们可以使用Pandas中的sum()方法来按行求和。比如,我们有一个数据框df,它包含三列A、B、C:

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
print(df)

输出结果为:

   A  B  C
0  1  4  7
1  2  5  8
2  3  6  9

现在,我们想按行求和,并只保留总和大于等于15的行。我们可以使用下面的代码:

df_sum = df.sum(axis=1)
df_new = df[df_sum >= 15]
print(df_new)

输出结果为:

   A  B  C
1  2  5  8
2  3  6  9
按列求和

我们可以使用Pandas中的sum()方法来按列求和。比如,我们有一个数据框df,它包含三行a、b、c和三列A、B、C:

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}, index=['a', 'b', 'c'])
print(df)

输出结果为:

   A  B  C
a  1  4  7
b  2  5  8
c  3  6  9

现在,我们想按列求和,并只保留总和大于等于8的列。我们可以使用下面的代码:

df_sum = df.sum(axis=0)
df_new = df.loc[:, df_sum >= 8]
print(df_new)

输出结果为:

   B  C
a  4  7
b  5  8
c  6  9
总结

本文介绍了如何使用Pandas按行或列的总和过滤数据框。我们可以使用sum()方法来求行或列的总和,然后再根据条件来筛选数据。这是Pandas中非常常用的数据处理操作。