pandas_数据预处理

本文详细介绍了如何使用Pandas库进行数据预处理,包括缺失值的检测与处理(删除和填充)、重复值的识别与删除、数据类型转换以及索引设置和重命名。通过实例演示了如何使用drop_duplicates、astype等函数进行操作。
摘要由CSDN通过智能技术生成

pandas 数据预处理

1.缺失值 处理

# 读取 Excel 文件
df = pd.read_excel('data.xlsx', sheet_name="Sheet1", header=0)
# 缺失值查看
print(df.info()print(df.isnull()# 缺失值删除
print(df.dropna()# 默认删除含有缺失值的整行,返回删除后的数据。
print(df.dropna(how="all")# 只会删除那些全为空值的行,不全为空值的行就不会被删除

# 缺失值填充
print(df.fifillna(0))
print(df.fifillna({"列1":"value1","列3","value3"}))

Python中缺失值一般用NaN表示

2.重复值 处理

df = pd.read_excel('data.xlsx', sheet_name="Sheet1", header=0)

# 利用drop_duplicates(),保留第一个
print(drop_duplicates()) # 默认对所有值进行重复值判断,且默认保留第一个(行)值

# 某列/某几列进行重复值删除
print(drop_duplicates(subset="列名称"))
print(drop_duplicates(subset=["列名称1","列名称2","列名称3"))

# 自定义删除项
print(drop_duplicates(subset=["列名称1","列名称2"],keep="last")) # 保留最后 一个值
print(drop_duplicates(subset=["列名称1","列名称2"],keep=False)) # 不保留任何一个重复值

3.数据类型转换

3.1数据类型

类型说明
int整型数,即整数
float浮点数,即含有小数点的数
objectPython对象类型,用0表示
string_字符串类型,经常用S表示,S10表示长度为10的字符串
unicode_固定长度的unicode类型,跟字符串定义方式一样
datetime64[ns]表示时间格式

在 Python 中,不仅可以用 info()方法获取每一列的数据类型,还可以通过 dtype方法来获取某一列的数据类型。

print(df["列名称"].dtype)

3.2类型转换

利用astype()方法对数据类型进行转换,astype后面的括号里指明要转换的目标类型即可。

print(df["列名称"].astype("float64"))

4.索引设置

# 设置表列索引
df.columns = ["lie1", 'lie2', "lie3"]
print(df)
# 设置表行索引
df.index = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(df)
# 重新设置索引列
print(df.set_index("指定列名称"))

# 重命名索引
print(df.rename(columns={"一": "新列名称1",
                         "二": "新列名称2"},
                index={1: "新列名称1",
                       2: "新列名称2"}
                ))
print(df) # rename操作,表格数据本身没有变化
  • 7
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值