数据清洗的常用工具--Pandas

  1. 现实中,数据并非完美的,需要进行清洗才能进行后面的数据分析
  2. 数据清洗是整个数据分析项目中最消耗时间的一步
  3. 数据的质量最终决定了数据分析的准确性
  4. 数据清洗是唯一可以提高数据质量的方法,使得数据分析结果也变得更可靠

数据清洗的常用工具


  1. 目前在Python中,numpy和pandas是最主流的工具
  2. Numpy中的向量化运算使得数据处理变得高效
  3. Pandas提供了大量数据清洗的高效方法
  4. 在Python中,尽可能多的使用numpy和pandas中的函数,提高数据清洗的效率

Pandas常用数据结构series和方法


  1. 通过pandas.Series来创建Series数据结构
  2. pandas.Series(data,index,dtype,name)
  • 上述参数:data可以为列表,array/dict

  • 上述参数:index表示索引,必须与数据同长度,name表示对象名称

    import pandas as pd
    import numpy as np series1 = pd.Series([2.8, 3.01, 8.99, 8.59, 5.18])
    series2 = pd.Series([2.8, 3.01, 8.99, 8.59, 5.18], index=['a', 'b', 'c', 'd', 'e'], name='这是一个series')
    series3 = pd.Series(np.array((2.8, 3.10, 8.99, 8.59, 5.18)), index=['a', 'b', 'c', 'd', 'e'])
    series4 = pd.Series({'北京': 2.8, '上海': 3.01, '广东': 8.99, '江苏': 8.59, '浙江': 5.18}) print(series1)
    """
    0 2.80
    1 3.01
    2 8.99
    3 8.59
    4 5.18
    dtype: float64
    """ print(series2)
    """
    a 2.80
    b 3.01
    c 8.99
    d 8.59
    e 5.18
    Name: 这是一个series, dtype: float64
    """
    print(series3)
    """
    a 2.80
    b 3.10
    c 8.99
    d 8.59
    e 5.18
    dtype: float64
    """ print(series4)
    """
    北京 2.80
    上海 3.01
    广东 8.99
    江苏 8.59
    浙江 5.18
    dtype: float64
    """

Pandas常用数据结构dataframe和方法


  • 通过pandas.DataFrame来创建DataFrame数据结构

  • Pandas.DataFrame(data,index,dtype,columns)

  • 上述参数:data可以作为 array/dict

  • 上述参数:index为 行 索引,columns代表列名或者列标签

    import pandas as pd
    import numpy as np list1 = [['张三', 23, '男'], ['李四', 27, '女'], ['王二', 26, '女']] # 使用嵌套列表
    df1 = pd.DataFrame(list1, columns=['姓名', '年龄', '性别'])
    df2 = pd.DataFrame({'姓名': ['张三', '李四', '王二'], '年龄': [23, 27, 26], '性别': ['男', '女', '女']})
    array1 = np.array([['张三', 23, '男'], ['李四', 27, '女'], ['王二', 26, '女']]) # 使用numpy
    df3 = pd.DataFrame(array1, columns=['姓名', '年龄', '性别'], index=['a', 'b', 'c']) print(df1)
    """
    姓名 年龄 性别
    0 张三 23 男
    1 李四 27 女
    2 王二 26 女
    """ print(df2)
    """
    姓名 年龄 性别
    0 张三 23 男
    1 李四 27 女
    2 王二 26 女
    """ print(array1)
    """
    [['张三' '23' '男']
    ['李四' '27' '女']
    ['王二' '26' '女']]
    """ print(df3)
    """
    姓名 年龄 性别
    a 张三 23 男
    b 李四 27 女
    c 王二 26 女
    """

常用方法


  • series和dataframe常用方法
方法名称 说明
values 返回对象所有元素的值
index 返回行索引
dtypes 返回索引
shape 返回对象数据形状
ndim 返回对象的维度
size 返回对象的个数
columns 返回列标签(只对dataframe数据结构)
pyinstaller -F -w demo.py --noconsole

Python数据处理常用工具(pandas)的更多相关文章

  1. 学习笔记:Python序列化常用工具及性能对比

    什么叫序列化?简单来讲就是将内存中的变量数据转而存储到磁盘上或是通过网络传输到远程. 反序列化是指:把变量数据从序列化的对象重新读到内存里. 下面我们一起来看看,python里面序列化常用的json. ...

  2. Python第三方常用工具、库、框架等

    Python ImagingLibrary(PIL):它提供强大的图形处理的能力,并提供广泛的图形文件格式支持,该库能进行图形格式的转换.打印和显示.还能进行一些图形效果的处理,如图形的放大.缩小和旋 ...

  3. python数据处理----常用数据文件的处理

    数据处理时,常用数据存储形式主要有:CSV.JSON.XML.EXCEL.数据库存储. 一.CSV文件 csv文件简介 CSV是一种通用的.相对简单的文件格式,被用户.商业和科学广泛应用.最广泛的应用 ...

  4. python opencv3 —— 常用工具、辅助函数、绘图函数(图像添加文本、矩形等几何形状)

    1. cv2.hconcat().cv2.vconcat() 将从摄像头捕获的多个图像帧,横向(cv2.hconcat)或纵向(cv2.vconcat)拼接到一起,使得可以在一个 window 中进行 ...

  5. (ES6)数据处理常用工具方法收集(更新状态: on)

    1. 扁平数组转成tree结构(来源: StackOverflow的印度老哥写的) // Data Set // One top level comment var comments = [{ id: ...

  6. Python 数据处理库 pandas 入门教程

    Python 数据处理库 pandas 入门教程2018/04/17 · 工具与框架 · Pandas, Python 原文出处: 强波的技术博客 pandas是一个Python语言的软件包,在我们使 ...

  7. Python 数据处理库pandas教程(最后附上pandas_datareader使用实例)

    0 简单介绍 pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库.本文是对它的一个入门教程. pandas提供了快速,灵活和富有 ...

  8. Python数据处理进阶——pandas

    对于python进行数据处理来说,pandas式一个不得不用的包,它比numpy很为强大.通过对<利用python进行数据分析>这本书中介绍pandas包的学习,再加以自己的理解,写下这篇 ...

  9. Python 爬虫的工具列表大全

    Python 爬虫的工具列表大全 这个列表包含与网页抓取和数据处理的Python库.网络 通用 urllib -网络库(stdlib). requests -网络库. grab – 网络库(基于pyc ...

随机推荐

  1. xshell行号显示

    xshell显示行号: 输入命令: vim ~/.vimrc 输入: set nu 之后在打开文件 就可以 看到行号显示.

  2. json工具--org.json.jar

    org.json可以解析json.把对象包装成json.API文档:http://resources.arcgis.com/en/help/arcobjects-java/api/arcobjects ...

  3. JavaScript几种继承方式的总结

    1.原型链继承 直接将子类型的原型指向父类型的实例,即"子类型.prototype = new 父类型();",实现方法如下: //父类构造函数 function father(n ...

  4. 关于String是值传递还是引用传递

    public class Itv { static String ss = "kkkkkk"; static String ss1 = new String("kkkkk ...

  5. Rocket - debug - TLDebugModuleInner - HALTSUM

    https://mp.weixin.qq.com/s/elOGjaVCWc48gs9c_cTqww 简单介绍TLDebugModuleInner中HALTSUM寄存器的实现. 1. numHalted ...

  6. jchdl - RTL实例 - AndReg

    https://mp.weixin.qq.com/s/p4-379tBRYKCYBk8AZoT8A   输入两组线相与,结果输出到寄存器.   参考链接 https://github.com/wjcd ...

  7. 【Mybatis】mybatis开启Log4j日志、增删改查操作

    Mybatis日志(最常用的Log4j) 官方网站http://www.mybatis.org/mybatis-3/zh/logging.html 1.在src目录下创建一个log4j.propert ...

  8. Sublime Text3 注册码(Windows/Build 3176版本)| 开发工具

    转自:dushusir.com 1.修改hosts文件(路径:C:\Windows\System32\drivers\etc): 0.0.0.0 www.sublimetext.com 0.0.0.0 ...

  9. Myeclipse新建工作空间配置

    之前跟着尚硅谷JavaWeb视频学习,现在总结一下Myeclipse新建工作空间配置 Windows按钮下的Preferences 1. General -->   Workspace --&g ...

  10. Java实现 LeetCode 475 供暖器

    475. 供暖器 冬季已经来临. 你的任务是设计一个有固定加热半径的供暖器向所有房屋供暖. 现在,给出位于一条水平线上的房屋和供暖器的位置,找到可以覆盖所有房屋的最小加热半径. 所以,你的输入将会是房 ...