pandas Series矢量化的字符串函数——Series.str
在清理文本数据时,对pandas Series(序列)可以使用map函数,所有的字符串都可以应用字符串函数或正则表达式,但是如果存在NA,就会报错。为了解决这个问题,Series有一些可以跳过NA值的字符串操作方法,这可以通过Series的str属性来访问。
s1 = pd.Series(['Mouse', 'dog', 'house and parrot', '23', np.NaN]) s1.str.contains('og', regex=False) 0 False 1 True 2 False 3 False 4 NaN dtype: object
通过str属性来调用字符串函数,处理非NA的文本数据。常用的字符串函数:
- Series.str.contains:文本是否包含特定的字符串
- Series.str.get:获得特定位置处的字符
- Series.str.index:获得特定文本在原始文本中的位置即索引,索引从0开始。
- Series.str.endswith:文本是否以特定文本结束
- Series.str.startswith:文本是否以特定的文本开始
- Series.str.find:从文本中查找特定的字符串
- Series.str.replace:替换文本
- Series.str.split:分割文本
- Series.str.trip:移除文本开头和结尾的空白格
- Series.str.slice:子字符串
- Series.str.match:是否匹配特定的正则表达式
参考文档:
作者:悦光阴
本文版权归作者和博客园所有,欢迎转载,但未经作者同意,必须保留此段声明,且在文章页面醒目位置显示原文连接,否则保留追究法律责任的权利。