• 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
  • 相关阅读:
    VScode 最新eslint设置
    vue部署在二级目录
    实现网页比12像素小
    css一个很好用的hover显示
    VSCode设置
    vue发布后的一些问题
    设置cssrem,设置emmet
    js时间与时间戳之间的转换操作,返回天、小时、分,全家桶
    Error resolving template [xxx], template might not exist or might not be exist
    解决jenkins shell执行sonar-scanner提示命令存在的问题
  • 原文地址:https://www.cnblogs.com/BC10/p/11693685.html
Copyright © 2020-2023  润新知