Bootstrap

pandas笔记(3)——DataFrame数据查看,缺失值,异常值,重复值预处理

数据情况查看

  • 预览数据前n行
    Python中预览数据可以使用head()函数,该函数默认展示前5行。
# 查看数据前2行
df.head(2)
  • 查看数据末尾n行
    可以使用tail()函数,查看数据末尾n行的数据,该函数默认展示5行
# 查看数据前2行
df.tail(2)
  • 获取数据表的行列数量
    在Python中获取数据表的行列数量,可以通过shape方法
# 获取表格的行列
df.shape
  • 获取数据表的数据类型
    获取数据表的数据类型,可以使用info()方法。
# 查看数据类型
df.info()


# 返回了所有列的数据类型
'''
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 6 entries, 0 to 5
Data columns (total 4 columns):
 #   Column  Non-Null Count  Dtype 
---  ------  --------------  ----- 
 0   功能      6 non-null      object
 1   关键字     6 non-null      object
 2   说明      6 non-null      object
 3   备注      1 non-null      object
dtypes: object(4)
memory usage: 320.0+ bytes
'''
  • 获取数据的分布情况
    获取数据的分布情况可以用describe()方法。
返回数据的分布情况
df.describe()

'''
describe会返回计数,平均值,最小值,最大值,四分位数等
'''

缺失值处理

  • 查看缺失值
    查看缺失值,可以通过isnull() 或 info()函数实现。
''' 显示各列有多少非空值'''
df.info()

''' 显示那个值为缺失值'''
df.isnull()
  • 删除缺失值
    删除含有缺失值的行可以使用dropna()方法
'''
dropna()方法会删除所有包含NaN值得行,然后返回删除后的数据。
dropna(how = 'all')则删除全部为空值的行
'''

df.dropna()
df.dropna(how = 'all')
  • 填充缺失值
    填充缺失值,可以使用fillna()方法
# 将NaN值全部转换为0
df.fillna(0)

'''
单列缺失值替换
将df表中年龄列的NaN值全部转化为0
'''
df.fillna({
   "年龄":0})

'''
多列缺失值替换
将df表中年龄、成绩列的NaN值全部替换成0
'''
df.fillna({
   "年龄":0,"成绩":0})

重复值处理

删除重复值可以使用drop_duplicates()方法,该函数默认对所有值进行重复值判断,并默认保留第一行的值。
格式:drop_duplicates(subset, keep)
参数
subset:传入删重依据的列
keep:frist删重时保留第一个值,last保留最后一个值,False把重复值全部删除。

'''创建一个DateFrame'''

df1=pd.DataFrame([[1,'张三'],[
;