Python Pandas - 根据和过滤 DataFrame 中的几行
要根据和从 DataFrame 中过滤几行,我们考虑了一个有关学生成绩的示例。我们需要计算特定科目的总和,其中总和大于 200,即该特定科目中所有 3 个学生的总和大于 200。通过这种方式,我们可以过滤出总和小于 200 的行。
首先,让我们创建一个具有 3 列的 DataFrame,即 3 个学生的记录 -
dataFrame = pd.DataFrame({'Jacob_Marks': [95, 90, 70, 85, 88],'Ted_Marks': [60, 50, 65, 85, 70],'Jamie_Marks': [77, 76, 60, 45, 50]})
根据行进行过滤。获取所有 3 个学生的总和大于 200 的行 -
dataFrame = dataFrame[dataFrame.sum(axis=1) > 200]
示例
以下是完整代码 -
import pandas as pd # create a dataframe with 3 columns dataFrame = pd.DataFrame({'Jacob_Marks': [95, 90, 70, 85, 88],'Ted_Marks': [60, 50, 65, 85, 70],'Jamie_Marks': [77, 76, 60, 45, 50]}) print"Dataframe...\n",dataFrame # filtering on the basis of rows # fetching rows with total greater than 200 for all the 3 students dataFrame = dataFrame[dataFrame.sum(axis=1) > 200] # dataframe print"Updated Dataframe...\n",dataFrame
输出
这将产生以下输出 -
Dataframe... Jacob_Marks Jamie_Marks Ted_Marks 0 95 77 60 1 90 76 50 2 70 60 65 3 85 45 85 4 88 50 70 Updated Dataframe... Jacob_Marks Jamie_Marks Ted_Marks 0 95 77 60 1 90 76 50 3 85 45 85 4 88 50 70
广告