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
  • 相关阅读:
    .Net 4.5中的HttpClient试用
    在silverlight中使用微软地图
    SQL语句之语法汇总(一)
    如何将google地图中的经纬度值导入ArcMap
    毕业周年季
    SQL语句之语法汇总(二)
    定时出现和消失的层
    实现iFrame自适应高度,原来很简单!
    .Net 中的反射(查看基本类型信息) Part.2
    反射一些文章
  • 原文地址:https://www.cnblogs.com/BC10/p/11693685.html
Copyright © 2011-2022 走看看