本文实例讲述了Python数据分析pandas模块用法。分享给大家供大家参考,具体如下:

pandas

pandas10分钟入门,可以查看官网:10 minutes to pandas

也可以查看更复杂的cookbook pandas是非常强大的数据分析包,pandas 是基于 Numpy 构建的含有更高级数据结构和工具的数据分析包。就好比 Numpy的核心是 ndarray,pandas 围绕着 Series 和 DataFrame 两个核心数据结构展开 。Series和DataFrame 分别对应于一维的序列和二维表结构。

创建对象

常规导入方式: import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

Series Series 可以看做一个定长的有序字典,它是能够保存任何数据类型(整数,字符串,浮点数,Python对象等)的一维标记数组。 Series对象包含两个主要的属性:index 和 values。 数据可以是Python字典、 ndarray、scalar value标量值(如5)等 创建时有没有index都会设置默认下标,但是索引用的是数组时会默认使用创建时的索引 创建时还可以指定name名字属性,之后可以修改 rename ser1 = pd.Series(range(10,15),index=list('ABCDE'))

print(ser1)

# 下标和索引等同

print(ser1['A'])

print(ser1[0])

输出:

A 10

B 11

C 12

D 13

E 14

dtype: int64

10

10

取连续多个数据时,下标取值不包含结束位置,索引切片包括结束位置 print(ser1['A':'D'])

print(ser1[0:3])

输出:

A 10

B 11

C 12

D 13

dtype: int64

A 10

B 11

C 12

dtype: int64

取多个数据、条件筛选(布尔索引) # 注意里面是一个列表

print(ser1[[0,1,3]])

# 布尔索引

print(ser1[(ser1>12)&(ser1<15)])

DataFrame

DataFrame是二维标记数据结构。 您可以将其视为电子表格或SQL表,或Series对象。 它通常是最常用的pandans对象。 像Series一样,DataFrame接受许多不同种类的输入: Dict of 1D ndarrays, lists, dicts, or Series 2-D numpy.ndarray Structured or record ndarray A Series Another DataFrame df1 = pd.DataFrame(np.random.randint(10,50,(3,4)), - index=list('ABC'),columns=list('abcd')) index是行索引,colums是列索引 用字典创建时,键名就是列索引,而且键值可以为列表,会自动补齐

取单行或单列数据,取单个数据 # 列取值,取出的是一个series对象

print(df1['a'])

print(df1['a'].values)

# 取出一行数据的某一行数据,也就是单个数据

print(df1['a']['B']) # 这两个一样

print(df1['a'][1])

取不连续多列,取连续多列(默认不支持连续,需要高级索引) # 取不连续多列

print(df1[['a','c']])

行索引,可以直接切片,但是默认不能不连续多行取值,下标同理 print('行索引取值##############')

print(df1['A':'A'])

# 取连续多行就是df1['A':'C']

高级索引(花式索引)

一般情况用于DataFrame,这里直接略过Series

loc标签索引 df1 = pd.DataFrame(np.random.randint(10,50,(5,4)), index=list('ABCDE'),columns=list('abcd'))

# 取单行,类型是series

print(df1.loc['A'])

print(type(df1.loc['A']))

# 取连续多行,类型是DataFrame

print(df1.loc['A':'C'])

# 如果没有index索引就用下标,可以取连续多行连续多列

print(df1.loc['A':'D','a':'c'])

# 取不连续多行不连续多列

print(df1.loc[['A','C'],['a','c']])

iloc 位置索引

iloc是下标和lo用法一样,但是下标索引左闭右开,loc是包括最后一位 # DataFrame

print(df1.iloc[0:2, 0]) # 注意和df1.loc['A':'C', 'a']的区别

print(df1.loc['A':'C', 'a'])

ix 标签与位置混合索引

博主使用的pandas 0.24.2版本已经弃用.ix了(warning但还能使用),所以也就不写了 ix是以上二者的综合,既可以使用索引编号,又可以使用自定义索引,要视情况不同来使用, 如果索引既有数字又有英文,那么这种方式是不建议使用的,容易导致定位的混乱。

增加数据

1 2 增加一行数据 1.df1.loc[‘D'] = [1,2,3,4,5] 2.df1.loc[‘D'] = [np.random.randint(10,20)] 增加一列数据 df1.

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

python 数据分析模块_Python数据分析pandas模块用法实例详解相关推荐

  1. python编程字典100例_python中字典(Dictionary)用法实例详解

    本文实例讲述了python中字典(Dictionary)用法.分享给大家供大家参考.具体分析如下: 字典(Dictionary)是一种映射结构的数据类型,由无序的"键-值对"组成. ...

  2. python中symbols函数用法_Python基础之函数用法实例详解

    本文以实例形式较为详细的讲述了Python函数的用法,对于初学Python的朋友有不错的借鉴价值.分享给大家供大家参考之用.具体分析如下: 通常来说,Python的函数是由一个新的语句编写,即def, ...

  3. python类初始化导入库_Python中optparser库用法实例详解

    本文研究的主要是Python中optparser库的相关内容,具体如下. 一直以来对optparser不是特别的理解,今天就狠下心,静下心研究了一下这个库.当然了,不敢说理解的很到位,但是足以应付正常 ...

  4. python多态的例子_Python编程之多态用法实例详解

    本文实例讲述了Python编程之多态用法.分享给大家供大家参考.具体分析如下: 什么是多态?顾名思义,多态就是多种表现形态的意思.它是一种机制.一种能力,而非某个关键字.它在类的继承中得以实现,在类的 ...

  5. python 字典定义日志用法_python中字典(Dictionary)用法实例详解

    本文实例讲述了python中字典(Dictionary)用法.分享给大家供大家参考.具体分析如下: 字典(Dictionary)是一种映射结构的数据类型,由无序的"键-值对"组成. ...

  6. [转载] python里字典的用法_python中字典(Dictionary)用法实例详解

    参考链接: Python字典dictionary copy方法 本文实例讲述了python中字典(Dictionary)用法.分享给大家供大家参考.具体分析如下: 字典(Dictionary)是一种映 ...

  7. python中字典del的用法_python中字典(Dictionary)用法实例详解

    本文展示了字典在python中的使用.分享给大家参考.具体分析如下: 字典是一种映射结构的数据类型,由无序的"键值对"组成.字典的关键字必须是不可改变的类型,如字符串.数字和元组: ...

  8. python的scatter函数_python scatter函数用法实例详解

    这篇文章主要介绍了python scatter函数用法实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 函数功能:寻找变量之间的关系. 调用签 ...

  9. python 自动化发送邮件_Python自动化必备发送邮件报告脚本详解

    #!/usr/bin/python3 # -*- coding:UTF-8 -*- import smtplib #smtplib库主要用来连接第三方smtp库,用来发邮件 from email.mi ...

  10. mysql数据库select语句用法_mysql学习笔记之完整的select语句用法实例详解

    本文实例讲述了mysql学习笔记之完整的select语句用法.分享给大家供大家参考,具体如下: 本文内容: 完整语法 去重选项 字段别名 数据源 where group by having order ...

最新文章

  1. go mod导入本地包的正确引入方法:require + replace
  2. P4884-多少个1?【BSGS】
  3. 中国开发者数量全球第二,C 语言一跌再跌!GitHub 年度报告重磅发布
  4. 关于ssd-tensorlow如何训练自己的数据集合
  5. linux支持arm架构么_全球首次!中国推出一款支持X86、ARM等各种芯片架构的操作系统...
  6. adobe 不适应 Max to分屏软件的修改
  7. Linux 系统使用 git 提交代码-- git 的安装及使用(简明教学指南)
  8. 如何在 3dMax 中制作游戏中的战斧模型?
  9. php根据日期获取到时星期几
  10. containers详解
  11. Web负载均衡的几种实现方式
  12. android平台的一款mud工具,全平台 MUD 客户端 TinTin++ 之安卓篇
  13. 算法作业(4):旅行者问题
  14. 蚂蚁区块链平台BaaS技术解析与实践 1
  15. 【Hive】报错Container is running beyond physical memory limits.4.0 GB of 4 GB physical memory used
  16. Windows Server 2016 启用完整版任务管理器
  17. What is COM, COM+? (什么是COM, COM+?)
  18. HTML5期末大作业:蛋糕网页设计——蛋糕甜品6页(代码质量好) 学生DW网页设计作业源码 web课程设计网页规划与设计
  19. grafana的实时地图(学习笔记)
  20. 基于新闻数据的社交网络图数据分析实战

热门文章

  1. 亲子阅读(相似页面)
  2. 从EOR与TOR架构谈EOR与TOR交换机
  3. 逻辑异或(XOR或EOR或⊕) / 逻辑与非(谢费尔竖线,Not AND,常缩写为NAND) / 逻辑或非(NOR) (网络搜集整理)
  4. 位操作(异或骚操作)
  5. 中英文混合按首字母排序
  6. 通过Alexa API获取Alexa排名
  7. 【报告分享】电商行业本地生活2020年综述及2021下半年展望-中信建投(附下载)
  8. Failed to execute ‘toDataURL‘ on ‘HTMLCanvasElement‘: Tainted canvases may not be exported.
  9. Fabric.js Failed to execute ‘toDataURL‘ on ‘HTMLCanvasElement‘: Tainted canvases may not be exported
  10. EasyRecovery16MAC苹果版本Photo最新版数据恢复软件