Pandas学习笔记(三)处理丢失数据&导入导出数据


前言

  这一节主要介绍如何处理丢失数据以及导入导出数据的方法

一、处理丢失数据

1.导入库&建含有NaN数据表

import numpy as np 
import pandas as pd 

dates = pd.date_range("20210124", periods=6)
df = pd.DataFrame(np.arange(24).reshape((6, 4)), index=dates, columns=["A", "B", "C", "D"])

df.iloc[0, 1] = np.nan
df.iloc[1, 2] = np.nan
print(df)

结果显示:
在这里插入图片描述

2.删除有NaN数据的行&列

1)存在NaN就删除行

print(df.dropna(
    axis=0, # 0对行进行操作 1对列进行操作
    how='any' # 'any':只要存在NaN就丢掉(默认方法);'all':必须全部是NaN才drop
))

结果显示:
在这里插入图片描述
2)存在NaN就删除列

print(df.dropna(axis=1, how="any"))

结果显示:
在这里插入图片描述
3)全为NaN才删除

print(df.dropna(axis=0, how="all"))

结果显示:
在这里插入图片描述

3.替换NaN的值

print(df.fillna(value=0))
# 替换NaN值为0

结果显示:
在这里插入图片描述

4.判断NaN数据

1)判断表中各值

print(df.isnull()) # 缺失数据返回True
# print(df.isna()) 在pandas中这两个方法等价

结果显示:
在这里插入图片描述
2)判断某列存在NaN

# 检测某列是否有缺失数据NaN
print(df.isnull().any())

结果显示:
在这里插入图片描述
3)判断整个表的情况

print(np.any(df.isnull()) == True) 
# 至少有个数据等于null返回True

结果显示:
在这里插入图片描述

二、使用步骤

1.引入库

import pandas as pd 

2.导入数据

data = pd.read_csv('student.csv') # 文件目录
# 当前文件夹下student.csv文件
print(data) # 会自动增加从0开始的索引

结果显示:
在这里插入图片描述
类似的导入方法如:
EXCEL:read_excel()
SQL:read_sql()
PICKLE:read_pickle()

5.查看数据

1)info()方法 查看详细信息

data.info()

结果显示:
在这里插入图片描述

2)head()方法 前几个数据

data.head() # 默认前五个数据

结果显示:
在这里插入图片描述

data.head(2)

结果显示:
在这里插入图片描述

3)tail()方法 后几个数据

data.tail() # 默认后5个数据

结果显示:
在这里插入图片描述

4.导出数据

data.to_pickle("student.pickle") # 导出存储成student.pickle

类似的导入方法如:
EXCEL:to_excel()
SQL:to_sql()
CSV:to_csv()

下一节介绍concat&append&merge三种合并方法