数据分析 | Pandas 200道练习题 进阶篇(1)

在这里插入图片描述

好久没有更新数据分析相关的内容,大家都知道数据分析的练习题不好找,博主这些天找的一个可以在线练习的网站推荐给大家 👉牛客网 往后的Pandas练习题从这里找。

前期准备

刚开始的入门题我就不再进行介绍了,大家自己练习一下顺便学会使用这个网站,需要注意的是因为是数据分析,设计到导入文件,所以没有办法进行自测运行只能提交后测试结果。
在这里插入图片描述

DA5 牛客网用户没有补全的信息

直达试题,快人一步
在这里插入图片描述
题意分析:
通过简单的读题,我们能够发现题目主要就是判断某一列中是否有空值,如果该列有空值 就返回 True 没有空值就返回False
题解:

import pandas as pd
# 导入数据
df = pd.read_csv("Nowcoder.csv")
# 判断某一类是否出现空值
print(df.isnull().any())

相关函数讲解

  • isnull() 判断数据是否为空,对象可以是DataFrame,也可以是Series
  • .any() 只要出现一个True 就返回True,否则返回False
  • .all() 和any对立,只有所有的内容为空返回 True,否则返回 False

DataFrame对象调用 any,all 会根据axis 参数进判断一列或一行的数据 ,axis=0axis=1行默认为列

创建数据

在这里插入图片描述

判断那一列出现空值

df.isnull().any(axis=0)
# axis=0 不写也可以

在这里插入图片描述
判断那一列的数据全为空

df.isnull().all()

在这里插入图片描述


DA6 查看牛客网哪些用户使用Python

直达试题,快人一步
在这里插入图片描述

题意分析:
题目中主要想找到常用语言为Python的人的全部信息,因此我们要先找到使用语言为Python的的索引,再根据索引去找这些人的全部信息

题解:

  • 使用布尔值索引
    通过判断每一个人常用的语言是否是Python,返回True,不是返回False
import pandas as pd
df = pd.read_csv('Nowcoder.csv',dtype=object)
# df['Language'] == 'Python'] 将Language中的数据依次比较,等于Python的返回True,不等于的返回False
print(df[df['Language'] == 'Python'])
  • 使用索引
    那一行常用语言
import pandas as pd
df = pd.read_csv('Nowcoder.csv',dtype=object)
idx= []
for i,item in enumerate(df['Language']):
    if item ==  'Python':
        idx.append(i)
print(df.iloc[idx])

相关函数
enumerate 通常和for循环一块使用返回索引和值
.iloc 根据隐式的行索引取值
.loc 根据显示行索引取值

DA7 牛客网Python用户的成就值

直达试题,快人一步
在这里插入图片描述
题意分析
从题目中我们能够发现,我问应该先找出使用Python的人员,再取出成就值得一列

import pandas as pd
df = pd.read_csv('Nowcoder.csv')
# 布尔值索引,和上一道一样,最后取出该列值
print(df[df['Language'] == 'Python']['Achievement_value'])

DA8 文件最后用户的部分数据

直达试题,快人一步
在这里插入图片描述
题意分析:
取最后得5行的指定列 先取出最后5行,根据列名取值
题解:

import pandas as pd
df = pd.read_csv('Nowcoder.csv')
print(df.tail()[['Nowcoder_ID','Level','Achievement_value','Language']])

相关函数
tail(n) 取出数据最后n行数据,n默认为5
head(n) 取出数据前的n行数据,n默认为5

总结

这次我们只讲解了4道题,也都比较简单,运用的知识都是以前学过的,这次的主要目的也是让大家熟悉一下牛客网的操作步骤。

在这里插入图片描述

  • 109
    点赞
  • 124
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 105
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 105
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小鱼干儿♛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值