一. pandas简介

1. 什么是pandas

pandas 是基于NumPy 的一种工具,该工具是为解决数据分析任务而创建的。
Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。
pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。
官方API文档: https://pandas.pydata.org/docs/reference/index.html

2. 列表/numpy/pandas

3. 为什么numpy/pandas比列表高效?

列表在内存中的存储是不连续的, 而numpy/pandas中的数据在内存中是连续的

二. pandas安装

(1). 升级PIP

python -m pip install --upgrade pip -i https://pypi.douban.com/simple --user

(2). 安装pandas

pip install --upgrade pandas -i https://pypi.douban.com/simple

至此pandas安装完成, 我们写一个小例子:

import pandas as pds1 = pd.Series([100,23,'熊爸'])print(s1)

运行结果:

如果想操作excel还需要安装以下库:

(3). xlrd : 读excel库

pip install --upgrade xlrd -i https://pypi.douban.com/simple

(4).openpyxl : 用于解决Excel(WPS等均可使用)中扩展名为xlsx/xlsm/xltx/xltm的文件读写的第三方库

pip install --upgrade openpyxl -i https://pypi.douban.com/simple

(5).Matplotlib : 绘制二维图像

pip install --upgrade matplotlib -i https://pypi.douban.com/simple

还有以下工具, 可以提高效率或生产力

(6).pillow : 图像压缩工具

pip install --upgrade pillow -i https://pypi.douban.com/simple

(7). 安装 jupyter :实时运行,并更美观的输出结果

pip install --upgrade jupyter -i https://pypi.douban.com/simple

使用起来很简单,只需要点击绿色的运行按钮,结果就会在代码块底部运行并展示

三. pandas中的两个数据结构: Series/DataFrame

Series是一维数据
DataFrame是二维数据, 每个DataFrame都由多个Series组成

pandas中没有三维及以上的数据

四. 创建Series对象的构造函数

class pandas.Series(data=None, index=None, dtype=None, name=None, copy=False, fastpath=False)
参数 说明
data 包含存储在Series中的数据。如果数据是字典,则保持参数顺序。
index index必须是可散列的,并且与data的长度相同。允许使用非唯一索引值。如果未提供,则默认为RangeIndex(0,1,2,…,n)。如果数据类似于dict并且索引为None,则数据中的键将用作索引。如果索引不为None,则使用索引值对所得Series系列重新索引。
dtype 输出系列的数据类型。如果未指定,则将从data推断出来。
name Series的名称
copy
fastpath

例子(1) : 用列表创建

import pandas as pds1 = pd.Series([1,2,4],index = list("abc"),name = "列表创建的Series",dtype= "int32")print(s1)

例子(2) : 用字典创建

import pandas as pddict1 = {"叮东":28,"淘跑":20,"唯饼会":25}
s1 = pd.Series(dict1,name = "熊爸双11销量",dtype= "int32")print(s1)

例子(3) : 用数值创建

index决定了数据的长度

import pandas as pds1 = pd.Series(3.0,index= ["豆瓣评分","时光网评分","知乎评分"])print(s1)

五. 创建DataFrame对象的构造函数

一般我们创建DataFrame对象有三种方法:

构造函数

class pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)
参数 说明
data 包含存储在DataFrame中的数据。可以是:类数组,迭代器,字典 或DataFrame。
index 用于结果帧的索引。如果没有输入数据的索引信息部分并且没有提供索引,则默认为RangeIndex。
columns 用于结果框架的列标签。如果未提供列标签,则默认为RangeIndex(0,1,2,…,n)。
dtype 强制的数据类型。仅允许单个dtype。如果没有,则推断。
copy

例子(1) : 用列表创建

import pandas as pdlist_2d = [[1, 2, 3],[4, 5, 6]
]s1 = pd.DataFrame(list_2d, columns=["豆瓣评分", "时光网评分", "猫眼评分"], index=["流浪地球", "唐人街探案"])print(s1)

例子(2) : 用字典创建

import pandas as pddict_2d = {"豆瓣评分":[1,2],"时光网评分":[3,4], "猫眼评分":[5,6]
}s1 = pd.DataFrame(dict_2d, index=["流浪地球", "唐人街探案"])print(s1)

读取excel表格创建DataFrame

这里我们就要用到之前下载的xlrd和openpyxl
读取时区分xls和xlsx,因为xlrd最新版反而不支持xlsx了

pandas玩转Excel及数据分析(一) 概述相关推荐

  1. Python数据分析:pandas玩转Excel(一)

    文章目录 1 pandas简介 2 导入 3 使用 4 读取.写入 1 pandas简介 1.Pandas是什么? Pandas是一个强大的分析结构化数据的工具集: 它的使用基础是Numpy(提供高性 ...

  2. Python数据分析:pandas玩转Excel(二)

    1 对Excel文件的操作 方法一: 使用xlrd库或者xlwt库进行对excel表格的操作读与写: 方法二: pandas库同样支持excel的读写操作:且更加简便. 2 pd.read_excel ...

  3. Python数据分析:pandas玩转Excel(三)

    将对象写入Excel工作表. 要将单个对象写入 Excel .xlsx 文件,只需指定目标文件名即可.要写入多个工作表,必须创建具有目标文件名的ExcelWriter对象,并在文件中指定要写入的工作表 ...

  4. pandas 玩转 Excel 操作总结

    Python 操作Excel操作总结,包括Series和Data Frame的互转.使用pandas读取Excel表格.python读取多个数据表.python合并多个工作表以及写入Excel文件 p ...

  5. pandas玩转excel-> (2)如何利用pandas读取excel数据文件

    pandas玩转excel-> (2)如何利用pandas读取excel数据文件 import pandas as pd #将excel文件读到内存中,形成dataframe,并命名为peopl ...

  6. pandas玩转excel-> (1)如何利用pandas创建excel数据文件

    pandas玩转excel-> (1)如何利用pandas创建excel数据文件 #在Anaconda3 的Spyder中 #定义pandas模块为pd import pandas as pd ...

  7. pandas神器操作excel表格大全(数据分析数据预处理)

    使用pandas库操作excel,csv表格操作大全 [点我下载本文PDF电子版] 关注公众号"轻松学编程"了解更多,文末有公众号二维码,可以扫码关注哦. 前言 准备三份csv表格 ...

  8. Python玩转Excel:统计函数

    一.统计函数初探 这是一个学生三次考试成绩登记表,现实现目标就是求出总成绩和平均成绩,如果大家有其他需求的话,可以参考. import pandas as pd datas = pd.read_exc ...

  9. oracle行列转换关联union的方式_几行代码轻松玩转 Excel 行列转换

    几行代码轻松玩转 Excel 行列转换 下面这种交叉式的 Excel 表是很常见的格式,用来填写和查看都比较方便: 但是,如果想做进一步的统计分析,这种格式就不方便了,需要行列转换,变成如下格式的明细 ...

最新文章

  1. spoj BCEASY - Bottom Coder (Easy)
  2. 如何得到iterator的当前元素_链表进化!双向链表+迭代器(Iterator)!
  3. mvn test BUILD FAILURE
  4. ASP.NET MVC 视图
  5. 绝对定位多个字居中显示的css
  6. php操作kafka
  7. 程序媛计划——mysql连接表
  8. oracle-01940,ORA-01940: 无法删除当前已连接的用户的错误,该如何解决呢?
  9. SharePoint2010 内容类型剖析(Content Type/ 內容類型)
  10. sfidsk创建可启动分区问题
  11. 牛腩学ASP.NET CORE做博客(视频)
  12. Maven报错Please ensure you are using JDK 1.4 or above and not a JRE解决方法!
  13. python读取dat文件写入表格_python DDT读取excel测试数据
  14. delphi播放wav声音
  15. 有效解决0x0000011b共享打印机无法连接(适用所有win系统)
  16. vue项目实现百度离线地图开发
  17. 变限积分性质的总结笔记
  18. 若依分离版整合IJpay实现第三方支付-(微信支付篇_v2)
  19. 【小知识】TVS瞬态抑制二极管与齐纳二极管(稳压管)的差异点分析
  20. uva10935卡片游戏

热门文章

  1. 25 个精彩的 HTML 5 教程
  2. 基于java+ssm的音乐信息网站-计算机毕业设计
  3. 无限级递归查找下级(PHP)
  4. matlab编写正整数阶乘函数,用matlab语言编写程序:编写一个计算阶乘的函数,再编写一个脚本文件,通过键盘输入计算阶乘的n值....
  5. 【华为OD机试真题2023B卷 JS】磁盘容量排序
  6. suricata的简单探究
  7. xmind常用快捷键
  8. 信管1172-201711671226-WWY —JSP智能手机销售网后台设计
  9. linux绝对路径写法,javalinux获取文件路径怎么写
  10. 阿里云数据盘挂载和卸载