Pandas 是一个开源的数据分析和操作库,它是 Python 编程语言的一个扩展。Pandas 提供了快速、灵活和表达能力强的数据结构,旨在使数据清洗和分析工作变得更加简单易行。

1.为什么要学习pandas?

  • numpy已经可以帮助我们进行数据的处理了,那么学习pandas的目的是什么呢?

    • numpy能够帮助我们处理的是数值型的数据,当然在数据分析中除了数值型的数据还有好多其他类型的数据(字符串,时间序列),那么pandas就可以帮我们很好的处理除了数值型的其他数据!

2.series

2.1创建Series

  • Series是一种类似与一维数组的对象,由下面两个部分组成:

    • values:一组数据(ndarray类型)
    • index:相关的数据索引标签
from pandas import Series
s = Series([1,2,3,'four'])
s

也可以和numpy模块一起创建

import numpy as np
s = Series(data=np.random.randint(1,6,size=(5)))
s

2.2使用imdex来构建索引

s = Series(data=np.random.randint(1,6,size=(5)),index=['a','b','c','d','e'])
s

输出结果为:

a    3
b 2
c 2
d 4
e 5
dtype: int32

那么为什么需要有显示索引?
显示索引可以增强Series的可读性

dic = {
'语文':100,
'数序':80,
'英语':60
}
s = Series(data=dic)
s

输出结果为

语文    100
数序 80
英语 60
dtype: int64

2.3Series的索引和切片

还是沿用2.2的代码

s[0:2]

结果为:

语文    100
数序 80
dtype: int64

2.4Series的一些常用属性

  • shape
  • size
  • index
  • values
s.shape
s.size
s.index #返回索引
s.values #返回值
s.dtype #元素的类型

2.5Series的常用方法

  • head(),tail()
  • unique()
  • isnull(),notnull()
  • add() sub() mul() div()

2.5.1head()和tail()

  • head()显示前n个数据
  • tail()显示后n个数据
s = Series(data=np.random.randint(1,100,size=(9)))
s
s.head(3)
s.tail(3)

2.5.2unique()

s.unique() #去重

2.5.3isnull()

s.isnull() #用于判断每一个元素是否为空,为空返回True,否则返回False

3.DataFrame

  • DataFrame是一个【表格型】的数据结构。DataFrame由按一定顺序排列的多列数据组成。设计初衷是将Series的使用场景从一维拓展到多维。DataFrame既有行索引,也有列索引。

    • 行索引:index
    • 列索引:columns
    • 值:values

3.1DataFrame的创建

  • ndarray创建
  • 字典创建
from pandas import DataFrame
d = DataFrame(data=np.random.randint(1,10,size=(3,4)))
d
dic = {
'name':['zhangsan','lisi','wangwu'],
'salary':[100,200,300]
}
d = DataFrame(data=dic,index=['a','b','c'])
d

3.2DataFrame的属性

  • values、columns、index、shape

3.3DataFrame的切片和索引操作

  • 索引:

    • df[col]:取列
    • df.loc[index]:取行
    • df.iloc[index,col]:取元素
  • 切片:
    • df[index1:index3]:切行
    • df.iloc[:,col1:col3]:切列
df = DataFrame(data=np.random.randint(1,100,size=(8,4)),columns=['a','b','c','d'])
df
df.loc[0]
df.loc[0:3]

pandas的一些基本操作的更多相关文章

  1. 机器学习三剑客之Pandas中DataFrame基本操作

    Pandas 是基于Numpy 的一种工具,是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具.Pandas提供了大量能使我们快速便捷 ...

  2. Pandas Series数据结构基本操作

    >>> import pandas >>> import numpy as np >>> from pandas import Series,Da ...

  3. pandas使用手册

    工欲善其事必先利其器,在使用Python做数据挖掘和数据分析时,一大必不可少的利器就是Pandas库了.pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的,其纳入了大量库 ...

  4. Python 数据处理扩展包: pandas 模块的DataFrame介绍(创建和基本操作)

    DataFrame是Pandas中的一个表结构的数据结构,包括三部分信息,表头(列的名称),表的内容(二维矩阵),索引(每行一个唯一的标记). 一.DataFrame的创建 有多种方式可以创建Data ...

  5. python 金融网贷数据,pandas进行数据分析并可视化系列 (词频统计,基本操作)

    需求: 某某金融大亨想涉足金融网贷,想给网贷平台取一个名字,那么取什么名字,名字里面包含哪些关键字,在行业内的曝光率会相比较高一些呢? 可以理解为: 你负责某某网贷平台的网络推广工作,如何进一步优化各 ...

  6. pandas学习(创建数据,基本操作)

    pandas学习(一) Pandas基本数据结构 Series类型数据 Dataframe类型 基本操作 Pandas基本数据结构 两种常用数据结构: Series 一维数组,与Numpy中的一维ar ...

  7. Python数据分析库pandas基本操作

    Python数据分析库pandas基本操作2017年02月20日 17:09:06 birdlove1987 阅读数:22631 标签: python 数据分析 pandas 更多 个人分类: Pyt ...

  8. python做数据分析pandas库介绍之DataFrame基本操作

    怎样删除list中空字符? 最简单的方法:new_list = [ x for x in li if x != '' ] 这一部分主要学习pandas中基于前面两种数据结构的基本操作. 设有DataF ...

  9. Pandas快速上手(一):基本操作

    本文包含一些 Pandas 的基本操作,旨在快速上手 Pandas 的基本操作. 读者最好有 NumPy 的基础,如果你还不熟悉 NumPy,建议您阅读NumPy基本操作快速熟悉. Pandas 数据 ...

  10. 用python做数据分析pandas库介绍之DataFrame基本操作

    怎样删除list中空字符? 最简单的方法:new_list = [ x for x in li if x != '' ] 这一部分主要学习pandas中基于前面两种数据结构的基本操作. 设有DataF ...

随机推荐

  1. 使用一次sql请求,返回分页数据和总条数

    日常搬砖,总少不了需要获取分页数据和总行数. 一直以来的实践是编码两次sql请求,分别拉分页数据和totolCount. 最近我在思考: 常规实践为什么不是 在一次sql请求中中执行多次sql查询或多 ...

  2. GPL前世今生

    从事Linux开发的朋友一定都听过GPL,那么到底什么是GPL呢?他有什么作用呢?本文给大家做详细讲解. 一.GNU/GPL 在讲解GPL之前,我们必须先了解什么是GNU? 1. 什么是GNU GNU ...

  3. Linux input 子系统详解

    1. 模块概述 1.1.相关资料和代码研究 drivers/input/ include/uapi/linux/input-event-codes.h 2. 模块功能 linux核心的输入框架 3. ...

  4. 代码随想录Day17

    654.最大二叉树 给定一个不重复的整数数组 nums . 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点,其值为 nums 中的最大值. 递归地在最大值 左边 的 子数组前缀 ...

  5. Win32 API 读取文件

    昨天又用Win32来读取文件的时候,又出现了字符编码的问题. 用TCHAR字符来写文件呢,用系统的记事本打开是乱码. 用CHAR字字符来写呢,在读取汉字的时候后面有一串乱码, 用CHAR[]数组读取就 ...

  6. Android Studio 项目已经sync完成,但是在布局中显示:Design editor is unavaliable until after a sunncessful project sync

    原因:在drawable文件夹中新增了一个png图标 解决:同步在drawable-v24文件中复制一份即可

  7. vue 根据div id 滚动到指定view到可视视图中

    <div id="name" @click="scrollToViewById('name')"> ...... </div> scro ...

  8. Postman Code Java-Unirest 代码的依赖

    本来是Postman的Code直接使用的,结果根据这个名字 Unirest,搜出来了很多依赖,使用了排名第一的, https://search.maven.org/search?q=Unirest 结 ...

  9. 【转】如何在ASP.NET Core自定义中间件中读取Request.Body和Response.Body的内容?

    文章名称: 如何在ASP.NET Core自定义中间件读取Request.Body和Response.Body的内容?作者: Lamond Lu地址: https://www.cnblogs.com/ ...

  10. 【YashanDB数据库】YAS-02032 column type is incompatible with referenced column type

    [标题]错误码处理 [问题分类]外键约束创建报错 [关键字]YAS-02032 [问题描述]设置外键约束报错,数据元数据不正确. [问题原因分析]外键字段类型不支持,比如varchar2(64) ,指 ...