zoukankan      html  css  js  c++  java
  • Pandas (四)文本数据处理

    文本数据也就是我们常说的字符串,Pandas 为 Series 提供了 str 属性,通过它可以方便的对每个元素进行操作。str 字符串向量化,可以提高处理字符串的效率。

    使用 str 方法将数据字符串向量化映射:

    #字符串处理相关的功能,就在Series.str
    s=grade.姓名.str
    s

    一、和 python 原生字符串区别不大的方法

    len、lower、upper、islower、isupper、find、count、strip、split

    # 字符串长度
    imdb.title.str.len()
    # 把字符串转换成小写
    imdb.title.str.lower()
    # 把字符串转换成大写
    imdb.title.str.upper()
    # 统计字符串中出现了几个 The
    imdb.title.str.count('The')
    # 使用 split 对字符串进行切割
    wine.商品名称.str.split(' ')

    二、高级方法

    1. contains 包含 : 判断字符串中是否包含某个自字符
    2. startswith :判断是否以子串开始
    3. endswith : 判断是否以子串结束
    # 提取出姓名中包含杨的数据
    grade[grade.姓名.str.contains('')]
    # 提取以杨开始的
    grade[grade.姓名.str.startswith('')]
    #提取以大结尾的
    grade[grade.姓名.str.endswith('')]
    # 把威尔斯密斯的电影提取出来
    imdb[ imdb.actors_list.str.contains("Will Smith")]
    
    # 把莱昂纳多的电影提取出来
    imdb[ imdb.actors_list.str.contains("Leonardo")]

    三、repalce 方法

    # 替换
    wine.商品名称.str.replace('ml', "ML")

    普通的 pandas 中的 replace

    这个 repalce 和 str 向量化后的 repalce 有很大的不同,这个是对整个字符串进行替换.

    grade.姓名.replace('杨璐','YangLu' )
    
    #str只能对Series,且是对字符串
    grade.姓名.str.replace('','Yang' )

    四、生成哑变量

     通过 get_dummies 方法可以将字符串转为哑变量,sep 参数是指定哑变量之间的分隔符。
    k = grade_new.血型.str
    
    k.get_dummies()
    
    # 横向拼接两个表格
    grade_new = pd.concat([grade_new ,k.get_dummies() ], axis = 1)
    grade_new
  • 相关阅读:
    NLP Best Practices
    Bert模型精简方法
    delphi:对象的创建(create)与释放(free/destory)(转载)
    delphi:Format格式化函数(转载)
    delphi:destroy, free, freeAndNil, release用法和区别(转载)
    delphi:function ParamStr(i:LongInt):string
    jquery:上传文件
    bootstrapValidator中用ajax校验
    jquery中实时监控文本框的变化
    jquery判断checkbox是否选中
  • 原文地址:https://www.cnblogs.com/BC10/p/11693685.html
Copyright © 2011-2022 走看看