广告
返回顶部
首页 > 资讯 > 后端开发 > Python >pandas应用实例之pivot函数详解
  • 131
分享到

pandas应用实例之pivot函数详解

2024-04-02 19:04:59 131人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录1、pivot函数的定义2、pivot函数的说明3、pivo函数的参数4、pivot函数实例5、pivot函数在实际工作中解决的案例总结1、pivot函数的定义 pivot(in

1、pivot函数的定义

pivot(index=None,columns=None,values=None) -> DataFrame

2、pivot函数的说明

通过给定的索引(index)和列(column)的值重新生一个DataFrame对象。

根据列值对数据进行整形(生成一个“透视”表)。从指定的索引/列中使用唯一的值来形成结果数据帧的轴。此函数不支持数据聚合,多个值将导致列中的多索引。

3、pivo函数的参数

index:指定一列做为生成DataFrame对象的索引,如果为空则默认为原来的索引。

columns:指定一列的值作为列名,必须传值。

values:指定一列作为生成DataFrame对象的值。可以为空。

4、pivot函数实例

df = pd.DataFrame({'foo': ['one', 'one', 'one', 'two', 'two', 'two'],
                    'bar': ['A', 'B', 'C', 'A', 'B', 'C'],
                    'baz': [1, 2, 3, 4, 5, 6],
                    'zoo': ['x', 'y', 'z', 'q', 'w', 't']})

# 指定foo的值为新dataframe的index,bar的值为columns,dataframe中对应的值为baz
df.pivot(index='foo', columns='bar', values='baz')

# 没有指定value,列名最外层保留原来的列,如下结果baz和zoo为原dataframe中的列名,新指定的列名bar在里层(暂时这么理解)。
df.pivot(index='foo', columns='bar')

# 可以通过索引的方式取指定的列数据
df.pivot(index='foo', columns='bar')['baz']

# 可以指定多个values
df.pivot(index='foo', columns='bar', values=['baz', 'zoo'])

# 指定多个columns
df.pivot(index='foo', columns=['bar','baz'], values=['zoo'])

# 指定多个index
df.pivot(index=['foo','bar'], columns='baz', values='zoo')

# 指定多个index可以通过index名取当个index的数据
df.pivot(index=['foo','bar'], columns='baz', values='zoo').loc["one",:]

# 这两行代码运行将会报错。
# 报错提示:ValueError: Index contains duplicate entries, cannot reshape
# 意思是指定的索引one有两个列bar=A冲突了。
df = pd.DataFrame({"foo": ['one', 'one', 'two', 'two'],
                   "bar": ['A', 'A', 'B', 'C'],
                   "baz": [1, 2, 3, 4]})
df.pivot(index='foo', columns='bar', values='baz')

5、pivot函数在实际工作中解决的案例

现在要上图中的不同code之间从2020-11-16到2020-11-18三天内num序列数的相关性。

首先,dataframe对象可以直接调用函数corr()计算不同列之间的相关性,所以现在需要将原始的dataframe对象转换成以code为列,date为索引,num为值的dataframe。
第一种比较笨的方法就是循环,此方法不但代码量较多而且在数据量很大时会比较耗时。不建议使用。

grouped = df.groupby(by=["code"])
df_num = pd.DataFrame()
for name,group in grouped:
    d = pd.Series(data=group["num"].values,name=name)
    df_num = pd.concat([df_num,d],axis=1)

df_close

第二种方法就是使用pivot函数,一行代码解决,运行快速。

df_num = df.pivot(index='date',columns='code',values='num')

想要的形式的dataframe生成了就可以直接调用corr()函数直接求出code之间的相关性了

# 计算列之间的相关性
df_num.corr()

总结

到此这篇关于pandas应用实例之pivot函数的文章就介绍到这了,更多相关pandas pivot函数内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: pandas应用实例之pivot函数详解

本文链接: https://www.lsjlt.com/news/119145.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • pandas应用实例之pivot函数详解
    目录1、pivot函数的定义2、pivot函数的说明3、pivo函数的参数4、pivot函数实例5、pivot函数在实际工作中解决的案例总结1、pivot函数的定义 pivot(in...
    99+
    2022-11-11
  • Oracle中pivot函数图文实例详解
    目录【基本介绍】【准备样例数据】【样例展示1】【样例展示2】【样例展示3】【样例展示4】【样例展示5】【样例展示6】总结【基本介绍】 【格式】:pivot(聚合函数 for 需要转为列的字段名 in(需要转为列的字段值)...
    99+
    2023-05-12
    oracle行转列函数pivot oracle pivot oracle pivot函数
  • Pandas数据分析之groupby函数用法实例详解
    目录正文一、了解groupby二、数据文件简介三、求各个商品购买量四、求各个商品转化率五、转化率最高的30个商品及其转化率小小の总结正文 今天本人在赶学校课程作业的时候突然发现gro...
    99+
    2022-11-11
  • Python数据分析之pandas函数详解
    目录一、apply和applymap二、排序三、处理缺失数据一、apply和applymap 1. 可直接使用NumPy的函数 示例代码: # Numpy ufunc 函数 df...
    99+
    2022-11-12
  • PHPcreate_function()函数应用实例详解
    目录前言create_function()简介函数功能代码注入实例0x010x02前言 一直遇到过这个 函数,但是不知道怎么利用 这回学习一下这个函数 creat...
    99+
    2022-11-13
  • pandas的apply函数用法详解
    目录1.基本信息2.语法结构3.使用案例3.1 DataFrame使用apply3.2 Series使用apply3.3 其他案例4.总结1.基本信息 Pandas 的 apply(...
    99+
    2023-01-11
    pandas apply用法 pandas apply
  • Python入门之三角函数sin()函数实例详解
    描述 sin()返回的x弧度的正弦值。 语法 以下是sin()方法的语法: importmath math.sin(x) 注意:sin()是不能直接访问的,需要导入math模块,然后通过math静态...
    99+
    2022-06-04
    函数 详解 实例
  • Python入门之三角函数tan()函数实例详解
    描述 tan() 返回x弧度的正弦值。 语法 以下是 tan() 方法的语法: import math math.tan(x) 注意:tan()是不能直接访问的,需要导入 math 模块,然后通...
    99+
    2022-06-04
    函数 详解 实例
  • Python函数式编程之返回函数实例详解
    目录看代码:用filter函数来计算素数用Python高阶函数来实现这个算法:高阶函数实现打印小于100的素数:总结 高阶函数除了可以接受函数作为参数外,还可以把函数作为结...
    99+
    2022-11-11
  • python Pandas库read_excel()参数实例详解
    目录1.read_excel函数原型2.参数使用举例2.1. io和sheet_name参数2.2. header参数2.3. skipfooter参数2.5. parse_date...
    99+
    2022-11-11
  • Python Pandas pandas.read_sql函数实例用法
    Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的...
    99+
    2022-06-02
    Python Pandas pandas.read_sql
  • Python Pandas聚合函数的应用示例
    目录Python Pandas聚合函数应用聚合函数1) 对整体聚合2) 对任意某一列聚合3) 对多列数据聚合4) 对单列应用多个函数5) 对不同列应用多个函数6) 对不同列应用不同函...
    99+
    2022-11-11
  • Pandas库中iloc[]函数使用详解
    1 iloc[]函数作用 iloc[]函数,属于pandas库,全称为index location,即对数据进行位置索引,从而在数据表中提取出相应的数据。 2 iloc函数使用 df...
    99+
    2023-05-15
    Pandas iloc[ ]函数 Pandas iloc函数
  • Python之基础函数案例详解
    函数就是把具有独立功能的代码块封装成一个小模块,可以直接调用,从而提高代码的编写效率以及重用性, 需要注意的是, 函数需要被调用才会执行, 而调用函数需要根据函数名调用 ...
    99+
    2022-11-12
  • Rust入门之函数和注释实例详解
    目录写在前面函数参数语句和表达式返回值注释写在前面 今天我们来学习 Rust 中的函数,最后会捎带介绍一下如何在 Rust 中写注释。也是比较轻量级的一节,大家快速过一下即可。 函数...
    99+
    2022-11-13
  • python数学建模之Numpy和Pandas应用实例分析
    Numpy 学习# Numpy的基本使用 ''' Numpy提供了两种基本的对象:ndarray存储单一数据类型的多维数组; ufunc是能够对数组进行处理的函数 1-导...
    99+
    2023-05-15
    Python Numpy Pandas
  • SQL之patindex函数的用法案例详解
    语法格式:PATINDEX ( '%pattern%' , expression ) 返回pattern字符串在表达式expression里第一次出现的位置,起始值从1开始算。 pa...
    99+
    2022-11-12
  • Python Pandas pandas.read_sql_query函数实例用法分析
    Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的...
    99+
    2022-06-02
    Python Pandas pandas.read_sql_query
  • python 函数的详解与应用范例
    目录如何定义一个函数如何使用什么是参数不定长参数return是干什么如何定义一个函数 函数也称方法,下面写一个简单的函数: def function(): print("我是函...
    99+
    2022-11-12
  • C语言之system函数案例详解
    来看看在windows操作系统下system () 函数详解(主要是在C语言中的应用) 注意:在windows下的system函数中命令可以不区别大小写! 函数名: system...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作