数据清洗的常用工具--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. HTML开发实例-简单相亲网站开发(主体为table)

    实现功能:简单的相亲网站: 清楚不常在,抓紧谈恋爱 我承诺 年满十八岁 单身 抱着严肃态度 寻找真诚的另一半 性别: 男 女 生日: --请选择年-- 2019 2020 2021 --请选择月-- ...

  2. SA-N26接口和EPS fallback

    SA-N26接口和EPS fallback 1 什么是N26接口 如下图,N26(23.501)接口为4G核心网和5G核心网之间的接口,即MME和AMF的接口,用于4G和5G的互操作 2 SA(5GC ...

  3. nodejs 开发服务端 部署到 iis 服务器环境 -- iisnode 安装问题解决记录

    开发环境 nodejs: v10.15.3 windows: 10 iis: 10 需求: 用Nodejs开发了服务端,要部署到IIS 需要在IIS服务器上安装iisnode,结果遇到问题:安装不上 ...

  4. redis 缓存穿透,缓存雪崩,缓存击穿

    1.缓存穿透:缓存穿透是指查询一个不存在的数据,由于缓存是不命中,将去查询数据库,但是数据库也无此记录,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义.在流量大时,可能DB就挂掉 ...

  5. 深入了解机器学习决策树模型——C4.5算法

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是机器学习专题的第22篇文章,我们继续决策树的话题. 上一篇文章当中介绍了一种最简单构造决策树的方法--ID3算法,也就是每次选择一个特 ...

  6. R语言入门一

    一.数据分析相关概念 数据:是指对事物或对象各方面进行描述的符号,包括事物的基本属性.特征.性质.状态.相互关系等:比如描述人的数据有:身高.年龄.性别.兴趣.性格.婚姻状态等等. 分析:是指把事物或 ...

  7. docker出现相同的image条目的删除办法

    一.问题:在测试docker安装的prometheus系统时,由于异常操作,使用docker image ls出现了两条一模一样的条目,如下: [root@ELK prometheus]# docke ...

  8. Java实现 LeetCode 650 只有两个键的键盘(递归 || 数学)

    650. 只有两个键的键盘 最初在一个记事本上只有一个字符 'A'.你每次可以对这个记事本进行两种操作: Copy All (复制全部) : 你可以复制这个记事本中的所有字符(部分的复制是不允许的). ...

  9. Java实现蓝桥杯勇者斗恶龙

    勇者斗恶龙 你的王国里有一条n个头的恶龙,你希望雇一些骑士把它杀死(即砍掉所有头). 村里有m个骑士可以雇佣,一个能力值为x的骑士可以砍掉恶龙一个直径不超过x的头, 且需要支付x个金币.如何雇佣骑士才 ...

  10. SQL Server使用Offset/Fetch Next实现分页

    T-SQL实现分页 ,查找指定范围内的数据 首先,正常的查询是这样的 使用分页后 select * from Products order by ProductID offset X rows fet ...