基于pandas的文本数据(字符串)处理

一、String类型的性质

1.1 string与object的区别

string类型和object不同之处有三:

  1. 字符存取方法(string accessor methods,如str.count)会返回相应数据的Nullable类型,而object会随缺失值的存在而改变返回类型
  2. 某些Series方法不能在string上使用,例如: Series.str.decode(),因为存储的是字符串而不是字节
  3. string类型在缺失值存储或运算时,类型会广播为pd.NA,而不是浮点型np.nan

为迎合pandas的发展模式,这里仍全部用string来操作字符串。

1.2 string类型的转换

如果将一个其他类型(如int、float、bool型数据)的容器直接转换string类型可能会出错:
在这里插入图片描述

当下正确的方法是分两部转换,先转为str型object,在转为string类型:
在这里插入图片描述

二、拆分与拼接

在这里插入图片描述

三、 替换

广义上的替换,就是指str.replace函数的应用,fillna是针对缺失值的替换,提到替换,就不可避免地接触到正则表达式。
在这里插入图片描述

四、子串匹配与提取

4.1 str.extract方法

  • 正则的() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。(\s*)表示连续空格的字符串
  • []是定义匹配的字符范围。比如 [a-zA-Z0-9]
  • {}一般用来表示匹配的长度,比如 \s{3} 表示匹配三个空格,\s[1,3]表示匹配一到三个空格
    -在这里插入图片描述

4.2 str.extractall方法

与extract只匹配第一个符合条件的表达式不同,extractall会找出所有符合条件的字符串,并建立多级索引(即使只找到一个)
在这里插入图片描述
在这里插入图片描述

五、常用字符串方法

1. 过滤型方法

在这里插入图片描述

2. isnumeric方法

检查每一位是否都是数字
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值