首页 > 编程语言 >Python Pandas 数据清洗

Python Pandas 数据清洗

时间:2024-01-05 21:12:36浏览次数:36  
标签:填充 Python DataFrame 缺失 df 清洗 数据 Pandas

 

1、处理缺失数据

处理缺失数据是数据清洗过程的一个重要部分。缺失数据可以以多种方式出现,最常见的是作为 NaN(Not a Number)。处理缺失数据涉及使用 isna() 或 isnull() 检测缺失值,fillna() 填充缺失值,dropna() 删除包含缺失值的行或列,以及 interpolate() 对缺失值进行插值处理。

方法

描述

isna() / isnull()

用于检测 DataFrame 中的缺失值,

返回布尔值结果。

fillna()

用指定的值或方法填充缺失值,

如用 0 填充或前项填充。

dropna()

删除包含缺失值的行或列。

interpolate()

通过各种插值方法填充缺失值,

例如线性插值。

import pandas as pd
import numpy as np

# 创建示例 DataFrame
data = {'A': [1, np.nan, 3], 'B': [4, 5, np.nan]}
df = pd.DataFrame(data)

# 检测缺失值
print("检测缺失值:\n",df.isna())

# 填充缺失值
df_filled = df.fillna(0)
df_filled_ffill = df.fillna(method='ffill')

print("填充缺失值:\n",df_filled_ffill)

# 删除缺失值
df_dropped = df.dropna()

print("删除缺失值:\n",df_dropped)

# 插值处理
df_interpolated = df.interpolate()

print("插值处理:\n",df_interpolated)

2、数据类型转换

在数据分析中,数据类型的正确性和一致性非常重要。如果数据类型不正确或不一致,会影响数据分析的结果。正确的数据类型不仅对数据分析至关重要,而且还能提高数据处理的效率。使用 astype() 方法将 DataFrame 或 Series 中的数据转换为指定类型,to_numeric() 转换数据为数值类型并处理无法转换的数据,以及 to_datetime() 和 to_timedelta() 将数据转换为日期时间或时间间隔类型,是确保数据正确处理和分析的关键步骤。

方法

描述

astype()

将 Pandas 对象的数据类型转换为指定的类型。

to_numeric()

将数据转换为数值类型,对于无法转换的数据,可以设置为 NaN。

to_datetime()

将数据转换为日期时间类型。

to_timedelta()

将数据转换为时间间隔类型。

 使用示例:Python Pandas 数据清洗-CJavaPy

3、重命名和替换数据

在数据分析中,重命名和替换数据是常见的操作。重命名可以使数据更易于理解和操作,替换可以将不正确或不一致的数据更改为正确的数据。

数据清洗过程包括使用 rename() 方法重命名 DataFrame 的列或行索引,replace() 方法替换特定值,以及利用条件表达式进行更复杂的替换操作,这些步骤对于维护数据的一致性和可读性非常重要。

方法

描述

rename()

用于重命名 DataFrame 的列或行索引。

replace()

用于替换 DataFrame 中的特定值。

iloc / loc

使用条件表达式进行复杂的替换操作。

使用示例:Python Pandas 数据清洗-CJavaPy

标签:填充,Python,DataFrame,缺失,df,清洗,数据,Pandas
From: https://www.cnblogs.com/tinyblog/p/17948097

相关文章

  • python-bs4获取图片
    一、用一个实例来了解一下 1、既然要用BeautifulSoup来解析,首先要把需要的模块导入;importosimportrequestsfrombs4importBeautifulSoup2、创建一个文件夹来存放要下载的数据:文件的名可以用户自定义file_name="imgs"ifnotos.path.exists(file_name......
  • 【Python入门教程】读取图片信息最全教程(经纬度、偏转角、无人机影像、大疆)
    ​    通常读取图片的属性信息(如经纬度、拍摄时间、IMU数据等)都是通过exifread库进行读取,但是有些图片用这个库读取的效果不好。所以今天我就和大家分享一下如何使用Python读取图片属性信息的三种方法。1GDAL读取    GDAL库是用来处理卫星影像的库,它同样可......
  • 【Python&RS】栅格数据/图片位深度(bit)转换
    ​    关于栅格数据/图片的位深度(eg.8bit、16bit、32bit)转换之前我就发过一篇文章,【Python&RS】基于GDAL栅格数据/图片位深度(bit)转换。但是最近在使用的时候发现好像效果不行,有时候转换不成功,所以自己又研究了一下原理重新写了一份代码。今天就和大家分享一下如何使用Py......
  • 使用Python+selenium实现第一个自动化测试脚本
    这篇文章主要介绍了使用Python+selenium实现第一个自动化测试脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧最近在学web自动化,记录一下学习过程。此处我选用python3.6+selenium3.0,均用最新版本,以适应......
  • 30道python自动化测试面试题与答案汇总
    对于机器学习算法工程师而言,Python是不可或缺的语言,它的优美与简洁令人无法自拔,下面这篇文章主要给大家介绍了关于30道python自动化测试面试题与答案汇总的相关资料,需要的朋友可以参考下1、什么项目适合做自动化测试?关键字:不变的、重复的、规范的1)任务测试明确,需求不会频繁......
  • 学习python自动化——re正则
    re(正则)一、正则表达式作用正则表达式匹配指定规则的字符串二、re常用方法findall(pattern,string,flags=0):使用正则表达式,匹配所有符合条件的字符串,返回匹配到的所有子串,返回listpattern:正则表达式string:匹配的字符串flags=0:自定义的一些规则,比如不......
  • python与yum的修复
    装python3.10时删了python3.7,结果导致yum也完蛋了。恢复的思路:彻底删除python和yum后重装。一、删除:1、卸载现有pythonrpm-qa|greppython|xargsrpm-ev--allmatches--nodeps##卸载pythonwhereispython|xargsrm-frv##删除所有参与文件whereispython##......
  • 《python神经网络读书笔记》
    感想:人工智能是一门古老的学科,意思是人为的创造出和人类相似的智能体。在很多科幻影视作品中都有描述,甚至有的影视作品中不是使用计算机来实现人工智能。但是实际上这门学科在21世纪之前一直没什么进展。20世纪时,这门学科的主要研究方向是通过写一些强制判断逻辑来模拟智能体。......
  • Python flask 网页版执行shell命令并返回结果['GET', 'POST'] 混合方式
    前言全局说明Pythonflask网页版执行shell命令并返回结果一、需要安装的库pip3installflask-ihttp://pypi.douban.com/simple/--trusted-hostpypi.douban.compip3installsubprocess-ihttp://pypi.douban.com/simple/--trusted-hostpypi.douban.com二、inde......
  • optical strain(python)
    利用pythonopencv计算opticalstrainimportcv2importnumpyasnpclassOptFlowStrain:def__init__(self):self.TVL1=cv2.optflow.DualTVL1OpticalFlow_create()defrun(self,img0,img1):returnself.cal_opt_flow(img0,img1)def......