使用枢轴重新排序多索引数据框

2023-12-21

我有一个数据框 df1 ,如下所示:

df1 = pd.DataFrame({'ID': [1,2,3,4,5,6],
                       'date': [1, 1, 1, 2, 2, 2],
                       'p_id': [1, 2, 3, 1, 2, 3],
                        '9h30': [0.11,0.12,0.13,0.14,0.15,0.16],
                        '9h35': [0.21,0.22,0.23,0.24,0.25,0.26],
                        '9h40': [0.31,0.32,0.33,0.34,0.35,0.36]})
df1.set_index('ID', inplace=True)

    9h30  9h35  9h40  date  p_id
ID                              
1   0.11  0.21  0.31     1     1
2   0.12  0.22  0.32     1     2
3   0.13  0.23  0.33     1     3
4   0.14  0.24  0.34     2     1
5   0.15  0.25  0.35     2     2
6   0.16  0.26  0.36     2     3

如果我使用df2 = df.pivot(index='p_id', columns='date')我得到 df2 :

      9h30        9h35        9h40      
date     1     2     1     2     1     2
p_id                                    
1     0.11  0.14  0.21  0.24  0.31  0.34
2     0.12  0.15  0.22  0.25  0.32  0.35
3     0.13  0.16  0.23  0.26  0.33  0.36

但这并不完全是我想要的 df3:

date         1                 2
      9h30  9h35  9h40  9h30  9h35  9h40
p_id                                    
1     0.11  0.21  0.31  0.14  0.24  0.34
2     0.12  0.22  0.32  0.15  0.25  0.35
3     0.13  0.23  0.33  0.16  0.26  0.36

有没有办法只用枢轴直接产生这个输出? 如果没有,您能告诉我您将如何有效地做到这一点吗? 谢谢。


我想你需要swaplevel http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.swaplevel.html + sort_index http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.sort_index.html:

df2 = df2.swaplevel(0,1, axis=1).sort_index(axis=1)
print (df2)
date     1                 2            
      9h30  9h35  9h40  9h30  9h35  9h40
p_id                                    
1     0.11  0.21  0.31  0.14  0.24  0.34
2     0.12  0.22  0.32  0.15  0.25  0.35
3     0.13  0.23  0.33  0.16  0.26  0.36
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用枢轴重新排序多索引数据框 的相关文章

随机推荐

  • jquery获取矩形宽度和高度传单

    我有一张地图和一个区域选择字段 initialize map var map L map map setView 38 0 2 L tileLayer http s tile cloudmade com 70146506bc514228ad
  • 使用 Python BaseHTTPServer 处理同时/异步请求

    我通过创建一个继承自 HTTPServer 和 ThreadingMixIn 的类来设置一个线程 使用 Python 线程 HTTP 服务器 class ThreadedHTTPServer ThreadingMixIn HTTPServe
  • 获取 Git 分支大小

    我正在尝试跟踪我正在进行的项目的规模 有没有一种简单的方法来获取不同分支的磁盘上的存储库大小 I tried git count objects v 但它为每个分支提供相同的存储库大小 With Git 2 31 Q1 2021 git r
  • 你使用ant的任务吗?

    The ant 任务的文档 http ant apache org manual Tasks depend html states 依赖任务的性能为 取决于许多因素 例如 作为类关系的复杂性和 有多少类文件已过期 关于是否是的决定 重新编译
  • 通过 jQuery 附加 HTML 字符串

    我想使用 jQuery 附加生成以下 HTML 字符串 手动编写代码对我来说看起来太麻烦了 div div
  • Eclipse:Spring bean 和上下文的开放声明/资源

    在观看我的一位同事使用 IntelliJ 工作时 我很嫉妒地注意到他可以在 Java 注释或 Spring 上下文文件中按住 Ctrl Command Click 的 Spring bean 上下文或资源的名称 并且 IntelliJ 将打
  • 在 matplotlib 中使用标量可映射的颜色编码

    is a subplot I created using matplotlib Is it possible to code the colors on the basis of a pre defined range I want to
  • 子进程和父进程ID

    只是与子进程块中的父 pid 值混淆了 我的程序如下 int main int argc char argv pid t pid pid fork if pid 1 perror fork failure exit EXIT FAILURE
  • 如何解决 npm 安装错误“npm ERR!代码1”

    我正在尝试安装Gulp js https en wikipedia org wiki Gulp js当我写的时候npm install我得到这个问题 npm ERR code 1 npm ERR path D www wegrow node
  • 在c中执行汇编代码

    我想知道是否有办法调用 c汇编代码 我想将此代码放入我的 c 文件中 我想在 c 文件中执行的汇编代码以返回地址 1 mov eax 0x2d 2 mov ebx 0 3 int 0x80 我知道答案是放eax 这是 c 文件的一部分 1
  • 如何使用 win32com 退出 Excel,而不保存?

    当我执行xl Quit 时 Excel总是弹出提示询问我是否要保存 如何告诉它我不想保存 xl Dispatch Excel Application xl Workbooks Open New Workbook xlsx do some s
  • 使用属性文件的 log4j 的多个过滤器

    我正在尝试使用此配置过滤日志消息 我假装忽略包含文本的消息Could not refresh JMS Connection for destination以及那些包含org apache activemq transport failove
  • 以 C# 形式创建 Windows 10 透明度效果

    如何创建在 Windows 10 中看到的透明效果 像这样的事情 我不知道如何在 C 中解决这个问题 从逻辑上讲 每次表单进入焦点时我都会拍摄桌面快照 然后对其进行模糊处理并将其放置在 0 0 屏幕到客户端坐标 处 这似乎不太有效 有什么帮
  • 为什么 NuGetPack 响应“无法创建没有依赖项或内容的包”

    我正在尝试使用以下蛋糕脚本 Task Create NuGet Packages IsDependentOn Build WithCriteria gt DirectoryExists parameters Paths Directorie
  • 如何在android中动态设置谷歌地图上的缩放级别?

    面临在 Android 谷歌地图中设置动态缩放级别的问题 就像在地图应用程序 android 的系统应用程序 中做的那样 我使用了下面的地图方法 mGoogleMap moveCamera CameraUpdateFactory newLa
  • 应用程序中的 UTC 时间相关问题(C#、ASP.NET 和 SQL)

    我正在开发一款与销售和采购报告相关的应用程序 我正在使用该采购和销售报告的数据生成图表 采购订单和销售订单的创建日期是相对于 UTC 5 30 时间的 即该时间适用于印度孟买 场景 1 假设这是一个场景 目前这个应用程序在印度用于这个场景
  • 未达到 OpenIdConnectEvents.OnTokenValidated

    使用asp net core 2 2 我的启动中有以下内容 我到达 OnRedirectToIdentityProvider 断点 然后到达 appsettings CallbackPath 中的相对路径 但我没有到达 OnTokenVal
  • 将第一个和第二个单词包裹在 span 类 PHP 中

    我正在使用 php 自生成的导航 我需要将第一个和第二个单词包装在单独的 div 类中 例如 li span First span span class word Second span Word li 目前我可以使用将第一个单词包装在跨度
  • SourceTree 中的壁球

    是否可以在 SourceTree 中进行压缩 我看到显然你可以 拖放 提交来压缩它们 然而 当我这样做时 它只会突出显示几个提交 更新答案 Windows 源树 从 1 5 版本开始 http blog sourcetreeapp com
  • 使用枢轴重新排序多索引数据框

    我有一个数据框 df1 如下所示 df1 pd DataFrame ID 1 2 3 4 5 6 date 1 1 1 2 2 2 p id 1 2 3 1 2 3 9h30 0 11 0 12 0 13 0 14 0 15 0 16 9h