Python Pandas - 根据总和从 DataFrame 过滤列
如需根据列的总和进行筛选,我们使用 loc() 方法。在我们的示例中,我们将每个学生的成绩进行求和,以获取学生列中成绩高于 400(即 80%)的学生。
首先,使用学生记录创建一个 DataFrame。有 3 个学生的成绩记录,即 3 列 -
dataFrame = pd.DataFrame({
'Jacob_Marks': [95, 90, 75, 85, 88],'Ted_Marks': [60, 50, 65, 85, 70],'Jamie_Marks': [77, 76, 65, 45, 50]})
根据列进行筛选。获取总成绩高于 400 的学生 -
dataFrame = dataFrame.loc[:, dataFrame.sum(axis=0) > 400]
示例
以下是完整代码 -
import pandas as pd
# create a dataframe with 3 columns
dataFrame = pd.DataFrame({
'Jacob_Marks': [95, 90, 75, 85, 88],'Ted_Marks': [60, 50, 65, 85, 70],'Jamie_Marks': [77, 76, 65, 45, 50]})
print"Dataframe...\n",dataFrame
# filtering on the basis of columns
# fetching student with total marks above 400
dataFrame = dataFrame.loc[:, dataFrame.sum(axis=0) > 400]
# dataframe
print"Updated Dataframe...\n",dataFrame输出
这将产生以下输出 -
Dataframe... Jacob_Marks Jamie_Marks Ted_Marks 0 95 77 60 1 90 76 50 2 75 65 65 3 85 45 85 4 88 50 70 Updated Dataframe... Jacob_Marks 0 95 1 90 2 75 3 85 4 88
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP