首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

盘点66个Pandas函数,轻松搞定“数据清洗”!

describe方法默认只给出数值型变量的常用统计量,要想对DataFrame中的每个变量进行汇总统计,可以将其中的参数include设为all。...head()方法和tail() 方法则是分别显示数据集的前n和后n行数据。如果想要随机看N行的数据,可以使用sample()方法。...此外,isnull().any()会判断哪些”列”存在缺失值,isnull().sum()用于将列中为空的个数统计出来。...它既支持替换全部或者某一行,也支持替换指定的某个或指定的多个数值(用字典的形式),还可以使用正则表达式替换。...他们通常也与匿名函数lambda一起使用。 df["数量"].apply(lambda x: x+1) 输出: 文本数据操作 之前我们曾经介绍过经常被人忽视的:Pandas 文本型数据处理。

3.8K11

《利用Python进行数据分析·第2版》第7章 数据清洗和准备7.1 处理缺失数据7.2 数据转换7.3 字符串操作7.4 总结

,则它会根据数据的最小值和最大值计算等长面元。...如果DataFrame的某一列中含有k个不同的值,则可以派生出一个k列矩阵或DataFrame(其值全为1和0)。...大部分文本运算都直接做成了字符串对象的内置方法。对于更为复杂的模式匹配和文本操作,则可能需要用到正则表达式。...这些运算大部分都能使用正则表达式实现(马上就会看到)。 ? ? casefold 将字符转换为小写,并将任何特定区域的变量字符组合转换成一个通用的可比较形式。...正则表达式 正则表达式提供了一种灵活的在文本中搜索或匹配(通常比前者复杂)字符串模式的方式。正则表达式,常称作regex,是根据正则表达式语言编写的字符串。

5.3K90
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    一看就会的Pandas文本数据处理

    文本数据类型 在pandas中存储文本数据有两种方式:object 和 string。...此外,我们还可以正则表达式替换,比如下面这个例子中我们实现的是对文本数据中英文部分进行倒序替换: 可能部分同学无法直观的理解上面的正则案例,这里简单的拆解介绍下: 关于正则表达式的一些介绍,大家还可以参考此前推文...文本拼接 文本拼接是指将多个文本连接在一起,基于str.cat()方法 比如,将一个序列的内容进行拼接,默认情况下会忽略缺失值,我们亦可指定缺失值 连接一个序列和另一个等长的列表,默认情况下如果有缺失值...,则会导致结果中也有缺失值,不过可以通过指定缺失值na_rep的情况进行处理 连接一个序列和另一个等长的数组(索引一致) 索引对齐 在索引对齐中,我们还可以通过参数join来指定对齐形式,默认为左对齐...比如下面这个案例,我们用正则表达式将文本分为两部分,第一部分是字母a和b,第二部分匹配数字: 在上述案例中,expand参数为Fasle时如果返回结果是一列则为Series,否则是Dataframe。

    1.4K30

    python数据科学系列:pandas入门详细教程

    pandas支持大部分的主流文件格式进行数据读写,常用格式及接口为: 文本文件,主要包括csv和txt两种等,相应接口为read_csv()和to_csv(),分别用于读写数据 Excel文件,包括xls...loc和iloc应该理解为是series和dataframe的属性而非函数,应用loc和iloc进行数据访问就是根据属性值访问的过程 另外,在pandas早些版本中,还存在loc和iloc的兼容结构,即...简单归纳来看,主要可分为以下几个方面: 1 数据清洗 数据处理中的清洗工作主要包括对空值、重复值和异常值的处理: 空值 判断空值,isna或isnull,二者等价,用于判断一个series或dataframe...,可通过axis参数设置是按行删除还是按列删除 替换,replace,非常强大的功能,对series或dataframe中每个元素执行按条件替换操作,还可开启正则表达式功能 2 数值计算 由于pandas...尤为强大的是,除了常用的字符串操作方法,str属性接口中还集成了正则表达式的大部分功能,这使得pandas在处理字符串列时,兼具高效和强力。例如如下代码可用于统计每个句子中单词的个数 ?

    15K20

    Python 数据分析(PYDA)第三版(三)

    基本类型是对象(字典)、数组(列表)、字符串、数字、布尔值和空值。对象中的所有键都必须是字符串。有几个 Python 库可用于读取和写入 JSON 数据。...对于许多数据集,您可能希望根据数组、Series 或 DataFrame 中的值执行一些基于值的转换。...替换值 使用 fillna 方法填充缺失数据是更一般的值替换的特殊情况。正如您已经看到的,map 可以用于修改对象中的一部分值,但 replace 提供了一种更简单、更灵活的方法。...如果 DataFrame 中的一行属于多个类别,则我们必须使用不同的方法来创建虚拟变量。...因此,当这些数据中引入缺失数据时,pandas 会将数据类型转换为float64,并使用np.nan表示空值。这导致许多 pandas 算法中出现了微妙的问题。

    33400

    pandas 文本处理大全(附代码)

    除了常规列变量df.col以外,也可以对索引类型df.Index和df.columns使用 确保访问的对象类型是字符串str类型。...如df.col.str.lower().str.upper(),这个和Dataframe中的一行操作是一个原理 下面正式介绍文本的各种骚操作,基本可以涵盖日常95%的数据清洗需要了,一共 8 个场景。...文本拼接通过cat方法实现,参数: others: 需要拼接的序列,如果为None不设置,就会自动把当前序列拼接为一个字符串 sep: 拼接用的分隔符 na_rep: 默认不对空值处理,这里设置空值的替换字符...7、文本包含 文本包含通过contains方法实现,返回布尔值,一般和loc查询功能配合使用,参数: pat: 匹配字符串,支持正则表达式 case: 是否区分大小写,True表示区别 flags: 正则库...8、文本的虚拟变量 get_dummies可以将一个列变量自动生成虚拟变量(哑变量),这种方法在特征衍生中经常使用。

    1.1K20

    50个Pandas的奇淫技巧:向量化字符串,玩转文本处理

    一、向量化操作的概述 对于文本数据的处理(清洗),是现实工作中的数据时不可或缺的功能,在这一节中,我们将介绍Pandas的字符串操作。...向量化的操作使我们不必担心数组的长度和维度,只需要关系操作功能,尤为强大的是,除了支持常用的字符串操作方法,还集成了正则表达式的大部分功能,这使得pandas在处理字符串列时,具有非常大的魔力。...repl:str 或可调用,替换字符串或可调用对象。可调用对象传递正则表达式匹配对象,并且必须返回要使用的替换字符串。 n:int,默认 -1(全部)从一开始就更换的数量。 case:布尔值,默认无。...() 按照分隔符提取每个元素的dummy变量,转换为one-hot编码的DataFrame 1、wrap() 处理长文本数据(段落或消息)时,Pandas str.wrap()是一种重要的方法。...sep 拆分,并作为虚拟/指标变量的 DataFrame 返回。

    6K60

    如何用 Python 执行常见的 Excel 和 SQL 任务

    在 Python 中,不需要知道很多关于正则表达式的知识,但它们是一个强大的工具,可用于匹配和替换某些字符串或子字符串。如果你想了解更多,请参考以下教程。 ? 信任这个网站的一些代码。...通过这个简单的 Python 赋值给变量 gdp,我们现在有了一个 dataframe,可以在我们编写 gdp 的时候打开和浏览。我们可以为该词添加 Python 方法,以创建其中的数据的策略视图。...我们首先在 Python 中使用 re 库。我们将使用正则表达式来替换 gdppercapita 列中的逗号,以便我们可以更容易地使用该列。 ? re.sub 方法本质上是使用空格替换逗号。...在 SQL 中,这是通过混合使用 SELECT 和不同的其他函数实现的,而在 Excel 中,可以通过拖放数据和执行过滤器来实现。 你可以使用 Pandas 库不同的方法或查询快速过滤。...使用相同的逻辑,我们可以计算各种的值 -- 完整列表位于左侧菜单栏下的计算/描述性统计部分的 Pandas 文档。

    10.8K60

    用Python执行SQL、Excel常见任务?10个方法全搞定!

    在 Python 中,不需要知道很多关于正则表达式的知识,但它们是一个强大的工具,可用于匹配和替换某些字符串或子字符串。如果你想了解更多,请参考以下内容。 ?...通过这个简单的 Python 赋值给变量 gdp,我们现在有了一个 dataframe,可以在我们编写 gdp 的时候打开和浏览。我们可以为该词添加 Python 方法,以创建其中的数据的策略视图。...我们首先在 Python 中使用 re 库。我们将使用正则表达式来替换 gdp_per_capita 列中的逗号,以便我们可以更容易地使用该列。 ? re.sub 方法本质上是使用空格替换逗号。...在 SQL 中,这是通过混合使用 SELECT 和不同的其他函数实现的,而在 Excel 中,可以通过拖放数据和执行过滤器来实现。 你可以使用 Pandas 库不同的方法或查询快速过滤。...使用相同的逻辑,我们可以计算各种的值 — 完整列表位于左侧菜单栏下的计算/描述性统计部分的 Pandas 文档。

    8.3K20

    pandas 文本处理大全

    除了常规列变量df.col以外,也可以对索引类型df.Index和df.columns使用 确保访问的对象类型是字符串str类型。...如df.col.str.lower().str.upper(),这个和Dataframe中的一行操作是一个原理 下面正式介绍文本的各种骚操作,基本可以涵盖日常95%的数据清洗需要了,一共 8 个场景。...文本拼接通过cat方法实现,参数: others: 需要拼接的序列,如果为None不设置,就会自动把当前序列拼接为一个字符串 sep: 拼接用的分隔符 na_rep: 默认不对空值处理,这里设置空值的替换字符...7、文本包含 文本包含通过contains方法实现,返回布尔值,一般和loc查询功能配合使用,参数: pat: 匹配字符串,支持正则表达式 case: 是否区分大小写,True表示区别 flags: 正则库...8、文本的虚拟变量 get_dummies可以将一个列变量自动生成虚拟变量(哑变量),这种方法在特征衍生中经常使用。

    18720

    Pandas中的数据转换

    并且能够自动排除缺失值。我们再来试试其他一些方法。例如,统计每个字符串的长度。 user_info.city.str.len() 替换和分割 使用 .srt 属性也支持替换与分割操作。....*", " ") 再来看下分割操作,例如根据空字符串来分割某一列 user_info.city.str.split(" ") 分割列表中的元素可以使用 get 或 [] 符号进行访问: user_info.city.str.split...get_dummies() 在分隔符上分割字符串,返回虚拟变量的DataFrame contains() 如果每个字符串都包含pattern / regex,则返回布尔数组 replace() 用其他字符串替换...Series中的每个字符串 slice_replace() 用传递的值替换每个字符串中的切片 count() 计数模式的发生 startswith() 相当于每个元素的str.startswith(pat...,性别×,生于×年×月×日” (b)将(a)中的人员生日信息部分修改为用中文表示(如一九七四年十月二十三日),其余返回格式不变。

    13510

    统计师的Python日记【第九天:正则表达式】

    第4、5两天掌握了Pandas这个库的基本用法。 第6天学习了数据的合并堆叠。 第7天开始学习数据清洗,着手学会了重复值删除、异常值处理、替换、创建哑变量等技能。...用正则表达式处理Pandas数据 (1)匹配行 (2)提取匹配文字 (3)提取匹配文字的一部分 ---- 统计师的Python日记【第9天:正则表达式】 前言 根据我的Python学习计划: Numpy...在数据清洗的学习过程中,发现文本数据的处理并非一招半式能解决,有时必须要搬出利器——正则表达式。...; pattern.sub(subtext, text) 将text中符合pattern的部分替换为subtext。...再比如,将ve和shuo打包: ? 正则表达式是文本分析的利器,在爬虫中用处也非常大。但本文中,我要挑战的是对DataFrame结构数据进行正则表达式的处理。

    1.8K40

    数据科学入门必读:如何使用正则表达式?

    re.sub() re.sub() 是另一个很好用的 re 函数。顾名思义,它的功能是替换一个字符串的一部分。...我们将使用正则表达式和 pandas 将每封电子邮件的各部分整理到合适的类别中,以便对该语料库的读取和分析更简单。...pandas dataframe 或表格中的一列。...我们使用空字符串 "" 替换 :\s* 即可实现。然后我们移除名称另一边的空格字符和尖括号,同样用一个空字符串替换它。最后,在将其分配给变量 sender_name 后,我们将其添加到字典。...使用 pandas 操作数据 将字典放入列表后,我们就能使用 pandas 库来轻松操作这些数据了。每个 key 都会成为一个列标题,每个值都是一列中的一行。

    3.6K100

    Pandas 2.2 中文官方教程和指南(十五)

    对于 StringDtype,返回数字输出的 string 访问器方法将始终返回可空整数 dtype,而不是根据 NA 值的存在返回 int 或 float dtype。...在StringArray中的缺失值将在比较操作中传播,而不总是像numpy.nan那样比较不相等。 本文档其余部分中的所有内容同样适用于string和object dtype。...使用传递的分隔符连接 Series 中每个元素的字符串 get_dummies() 使用分隔符拆分字符串,返回包含虚拟变量的 DataFrame contains() 如果每个字符串包含模式/正则表达式...在StringArray中的缺失值将在比较操作中传播,而不像numpy.nan那样总是比较不相等。 本文档其余部分中的其他内容同样适用于string和object dtype。...在StringArray中的缺失值将在比较操作中传播,而不像numpy.nan那样总是比较不相等。 本文档其余部分中的所有内容同样适用于string和object dtype。

    23610

    利用 pandas 和 xarray 整理气象站点数据

    利用 pandas 和 xarray 整理气象站点数据 平时用 xarray 库在处理 nc 格式的数据非常方便,但偶尔还是要用到一些站点数据来辅助分析,而站点数据一般都是用文本文件存储的,比如下图这种格式...用Python处理这种文本列表就需要用上 pandas 库了, xarray 库就是基于 pandas 的,虽然天天在用 xarray ,但是这还是第一次正儿八经用 pandas 处理数据,就当做一次学习的过程啦...一、 目标和步骤 将上图示例的文件处理为(站点,时间)坐标的 nc 格式数据,方便以后直接读取,主要有以下几个步骤: 将文本文件读取为 DataFrame 并将无效值替换为 Nan 将时间信息处理为...plt 定义处理过程中的函数: 处理时间坐标,利用 datetime 将整形的年、月、日转换为 pandas 的时间戳 def YMD_todatetime(ds): # 读取年月日数据,转换为...na_values = [32700, 32744, 32766] # 分别代表 微量、空白、缺测,读取时替换为Nan df = pd.DataFrame() # 先建立一个空表,然后append

    10.2K41

    Pandas文本数据处理 | 轻松玩转Pandas(4)

    # 导入相关库 import numpy as np import pandas as pd 为什么要用str属性 文本数据也就是我们常说的字符串,Pandas 为 Series 提供了 str 属性,...竟然出错了,错误原因是因为 float 类型的对象没有 lower 属性。这是因为缺失值(np.nan)属于float 类型。 这时候我们的 str 属性操作来了,来看看如何使用吧。...,并对每个变量下使用 0 或 1 来表达。...get_dummies() 在分隔符上分割字符串,返回虚拟变量的DataFrame contains() 如果每个字符串都包含pattern / regex,则返回布尔数组 replace() 用其他字符串替换...Series中的每个字符串 slice_replace() 用传递的值替换每个字符串中的切片 count() 计数模式的发生 startswith() 相当于每个元素的str.startswith(pat

    1.7K20

    Python数据科学(七)- 资料清理(Ⅱ)1.资料转换2.处理时间格式资料3.重塑资料4.学习正则表达式5.实例处理

    建立虚拟变量 pandas.get_dummies(df['朝向']) 合并虚拟变量与原DataFrame df = pandas.concat([df, pandas.get_dummies(df['...正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些匹配某个模式的文本。...使用re的一般步骤是先使用re.compile()函数,将正则表达式的字符串形式编译为Pattern实例,然后使用Pattern实例处理文本并获得匹配结果(一个Match实例),最后使用Match实例获得信息...1.正则表达式(Regular Expression):查询和匹配字符串的规则 2.正则表达式表示数据 普通字符: 元数据,可以用于匹配指定的字符 r = “a”:用于在目标字符串中匹配小写字母a元字符...#正则表达式在python中的使用 正则表达式,在python中,主要用到了一个re模块 compile():编译正则表达式 pattern = re.compile(“^\d{2,}$”) pattern

    1.1K30

    利用 pandas 和 xarray 整理气象站点数据

    作者:石异 (南京大学大气科学学院,硕士生) 利用 pandas 和 xarray 整理气象站点数据 平时用 xarray 库在处理 nc 格式的数据非常方便,但偶尔还是要用到一些站点数据来辅助分析,而站点数据一般都是用文本文件存储的...用Python处理这种文本列表就需要用上 pandas 库了, xarray 库就是基于 pandas 的,虽然天天在用 xarray ,但是这还是第一次正儿八经用 pandas 处理数据,就当做一次学习的过程啦...一、 目标和步骤 将上图示例的文件处理为(站点,时间)坐标的 nc 格式数据,方便以后直接读取,主要有以下几个步骤: 将文本文件读取为 DataFrame 并将无效值替换为 Nan 将时间信息处理为...plt 定义处理过程中的函数: 处理时间坐标,利用 datetime 将整形的年、月、日转换为 pandas 的时间戳 def YMD_todatetime(ds): # 读取年月日数据,转换为...na_values = [32700, 32744, 32766] # 分别代表 微量、空白、缺测,读取时替换为Nan df = pd.DataFrame() # 先建立一个空表,然后append

    5.4K13

    统计师的Python日记【第八天:数据清洗(2)文本处理】

    第4、5两天掌握了Pandas这个库的基本用法。 第6天学习了数据的合并堆叠。 第7天开始学习数据清洗,着手学会了重复值删除、异常值处理、替换、创建哑变量等技能。...下集预告 ---- 统计师的Python日记【第8天:数据清洗(2)文本处理】 前言 根据我的Python学习计划: Numpy → Pandas → 掌握一些数据清洗、规整、合并等功能 → 掌握类似与...早睡早起;2-晚睡早起;3-早睡晚起;4-晚睡晚起 我把这份数据中存在的问题一一处理了,包括: 重复值删除 ID为1的出现了三次、ID为5的出现了两次、ID为9和10的都分别出现了两次。...替换 将年龄异常的替换成缺失,将抽烟为-9的替换成0(不抽烟就是抽烟数量为0,替换之后既合理又可以减少缺失值) 数据映射 将Areas四个地区分别映射成农村(R)和城市(U)。...(未显示完) 假设这是一份产品名单,我现在只想把数字编码的数据,也即红色部分筛选出来,应该如何做? (看过数说工作室的【SAS 正则表达式】系列的朋友一定不会陌生,这是那上面的例子) 4.

    2.1K60

    Python中查询缺失值的4种方法

    在我们日常接触到的Python中,狭义的缺失值一般指DataFrame中的NaN。广义的话,可以分为三种。...缺失值:在Pandas中的缺失值有三种:np.nan (Not a Number) 、 None 和 pd.NaT(时间格式的空值,注意大小写不能错) 空值:空值在Pandas中指的是空字符串""; 最后一类是导入的...对于这类文本,我们可以使用正则表达式来匹配缺失值。 import re df[df["C列"].apply(lambda x: len(re.findall('NA|[*|?|!...= 0)] 输出: 如上所示,我自定义了匿名函数lambda,作用是在文本列的每一行中查找以下文本值:“NA”、“*”、“?” 、“!” 、“#”、“-”,并检查它找到的列表的长度。...= 0)] 输出: 我们可以对不同列都进行同样的缺失值查询,另外也可以根据自己的实际情况,替换正则表达式中代表缺失值的字符。 ---- 人生苦短,快学Python!

    4.3K10
    领券