目录
1.题目描述
2.输入描述
3.输出描述
4.题目分析
5.通过代码
1.题目描述
现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
Nowcoder_ID:用户ID
Level:等级
Achievement_value:成就值
Num_of_exercise:刷题量
Graduate_year:毕业年份
Language:常用语言
如果你想知道这份数据是不是所有列的信息都是有数据的,有没有哪些列的数据没有补全,请输出每列信息是否有为空值。
2.输入描述
输出该数据集每列信息是否有为空值,如下所示:
3.输出描述
输出该数据集的前6行,如下所示:
备注:打开文件时需要添加dtype=object,防止年份信息读取为小数。
4.题目分析
本题需要我们搜索查找每列元素中存在空值的数据信息,我们使用两个函数来进行查找。
Function 1:直接调用isna().any()函数,然后我们限定查找的方式是按列查找
Function 2:直接调用isnull().any()函数,然后我们限定查找的方式是按列查找
Q1:如何设置按列查找呢?
A1:我们直接给定axis=0就可以按列查找了。
Q2:如何理解axis=1和axis=0呢?
A2:axis=1在numpy中表示列方向,axis=0表示行方向,但是我们要理解查找的过程是由上到下查找空信息,然后再转向第二列,所以我们需要实现的是由上到下的顺序,所以我们需要设置axis=0而不是axis=1.
5.通过代码
import pandas as pd
data=pd.read_csv(r"Nowcoder.csv",dtype=object)
#直接调用isna().any()即可
#直接调用isnull().any()即可
#axis=0表示纵轴,方向从上到下
#print(data.isna().any(axis=0))
print(data.isnull().any(axis=0))