杜凯杰教学数据分析:python pandas 添加、汇总、分类、条件判断、显示满足指定条件数据、操作集锦

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_44528048/article/details/92021719

**

python pandas 操作集锦

**

载入数据集

df = pd.DataFrame({
    '学生姓名':['小红','小花','小明','小军','小雷'],
    '性别':['女','女','男','男','男'],
    '语文成绩':[58,78,96,64,85],
    '数学成绩':[90,69,45,35,57],
    '英语成绩':[68,80,46,66,96]
})
df

1、显示语文成绩及格的,学生姓名及语文成绩信息(python pandas显示某列值大于某个值的所有行数据)

df[df['语文成绩']>=60][['学生姓名','语文成绩']]

学生姓名 语文成绩
1 小花 78
2 小明 96
3 小军 64
4 小雷 85

显示各科成绩均及格的,学生信息(python pandas显示所有列值均大于某个值的所有行数据)

df[df['语文成绩']>=60][df['数学成绩']>=60][df['英语成绩']>=60]

学生姓名 性别 语文成绩 数学成绩 英语成绩
1 小花 女 78 69 80

添加一列汇总学生的总成绩(python pandas将指列数据进行求和,生成新的列数据)

df["总成绩"]=df['语文成绩']+df['数学成绩']+df['英语成绩']

学生姓名 性别 语文成绩 数学成绩 英语成绩 总成绩
0 小红 女 58 90 68 216
1 小花 女 78 69 80 227
2 小明 男 96 45 46 187
3 小军 男 64 35 66 165
4 小雷 男 85 57 96 238

显示总成绩最高、最低学生的信息(python pandas显示某列最高值所在的行数据及最低值所在的行数据)

df[df.总成绩==df.总成绩.max()]
df[df.总成绩==df.总成绩.min()]

学生姓名 性别 语文成绩 数学成绩 英语成绩 总成绩
4 小雷 男 85 57 96 238

学生姓名 性别 语文成绩 数学成绩 英语成绩 总成绩
3 小军 男 64 35 66 165

分类显示男生与女生成绩总和(python pandas 分类求和)

df.groupby('性别')['总成绩'].sum()

性别
女 443
男 590
Name: 总成绩, dtype: int64

按照总成绩对学生信息进行降序排序


df.sort_values('总成绩',ascending=False)  #ascending=True时升序排序

学生姓名 性别 语文成绩 数学成绩 英语成绩 总成绩
4 小雷 男 85 57 96 238
1 小花 女 78 69 80 227
0 小红 女 58 90 68 216
2 小明 男 96 45 46 187
3 小军 男 64 35 66 165

#添加一列显示学生成绩平均值(python pandas 求指定行或列的平均值)

df['平均值']=df.iloc[:,2:5].mean(axis=1)

学生姓名 性别 语文成绩 数学成绩 英语成绩 总成绩 平均值
0 小红 女 58 90 68 216 72.000000
1 小花 女 78 69 80 227 75.666667
2 小明 男 96 45 46 187 62.333333
3 小军 男 64 35 66 165 55.000000
4 小雷 男 85 57 96 238 79.333333

猜你喜欢

转载自blog.csdn.net/weixin_44528048/article/details/92021719
今日推荐