Pandas 重新索引数据框问题

2024-03-02

假设我有以下数据框,

         A       B
0  1986-87  232131
1  1987-88  564564
2  1988-89  123125
               ...

等等。

我正在尝试重新索引<myFrame>.set_index('A'),这样我就得到

                B
  1986-87  232131
  1987-88  564564
  1988-89  123125

但我不断得到这个:

               B
       A       
 1986-87  232131
 1987-88  564564
 1988-89  123125

这很烦人,因为我尝试了其他重新索引方法。我不确定是什么A实际上代表的是因为它没有出现在<myFrame>.columns or <myFrame>.index和做<myFrame>['B'][0]给我232131,那么什么是A在这个重新索引的数据框中,我怎样才能从一开始就正确索引或摆脱这个奇怪的A在错误地重新索引数据框中。


您需要重置索引的 name/names 属性:

df.index.names = [None]

Example:

In [11]: df = pd.DataFrame([[1, 2], [3, 4]], columns=['A', 'B']).set_index('A')

In [12]: df
Out[12]: 
   B
A   
1  2
3  4

In [13]: df.index.names = [None]

In [14]: df
Out[14]: 
   B
1  2
3  4

这些名称描述了索引,并赋予索引一些含义,并且还区分索引中的不同级别(在 MultiIndex 中)。

正如 @DSM 指出的,这样做需要您自担风险,如果您想重置索引,这会丢失信息:

In [15]: df.reset_index() # col_fill=['A', 'B'])
Out[15]: 
   index  B
0      1  2
1      3  4

但是,您可以手动 col_fill 名称:

In [16]: df.reset_index(col_fill=['A'])
Out[16]: 
   A  B
0  1  2
1  3  4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pandas 重新索引数据框问题 的相关文章

  • SQLAlchemy 通过关联对象声明式多对多自连接

    我有一个用户表和一个朋友表 它将用户映射到其他用户 因为每个用户可以有很多朋友 这个关系显然是对称的 如果用户A是用户B的朋友 那么用户B也是用户A的朋友 我只存储这个关系一次 除了两个用户 ID 之外 Friends 表还有其他字段 因此
  • 为 Anaconda Python 安装 psycopg2

    我有 Anaconda Python 3 4 但是每当我运行旧代码时 我都会通过输入 source activate python2 切换到 Anaconda Python 2 7 我的问题是我为 Anaconda Python 3 4 安
  • Python - StatsModels、OLS 置信区间

    在 Statsmodels 中 我可以使用以下方法拟合我的模型 import statsmodels api as sm X np array 22000 13400 47600 7400 12000 32000 28000 31000 6
  • 如何使用Conda下载python包并随后离线安装?

    我知道通过 pip 我可以使用以下命令下载 Python 包 但 pip install 破坏了我的内部包依赖关系 当我做 pip download
  • 绘制随时间变化的分类数据计数

    我有一个数据框 df 其中有一列包含分类数据 ETH 带有 DateTimeIndex 我想绘制类别counts随着时间的推移 它们按天索引 我最好按年绘制它们 df pd DataFrame County 0 Bexar 3 Nueces
  • 使用 on_bad_lines 将 pandas.read_csv 中的无效行写入文件

    我有一个 CSV 文件 我正在使用 Python 来解析该文件 我发现文件中的某些行具有不同的列数 001 Snow Jon 19801201 002 Crom Jake 19920103 003 Wise Frank 19880303 l
  • 以编程方式停止Python脚本的执行? [复制]

    这个问题在这里已经有答案了 是否可以使用命令在任意行停止执行 python 脚本 Like some code quit quit at this point some more code that s not executed sys e
  • 使用 Tkinter 显示 numpy 数组中的图像

    我对 Python 缺乏经验 第一次使用 Tkinter 制作一个 UI 显示我的数字分类程序与 mnist 数据集的结果 当图像来自 numpy 数组而不是我的 PC 上的文件路径时 我有一个关于在 Tkinter 中显示图像的问题 我为
  • AWS EMR Spark Python 日志记录

    我正在 AWS EMR 上运行一个非常简单的 Spark 作业 但似乎无法从我的脚本中获取任何日志输出 我尝试过打印到 stderr from pyspark import SparkContext import sys if name m
  • 绘制方程

    我正在尝试创建一个函数 它将绘制我告诉它的任何公式 import numpy as np import matplotlib pyplot as plt def graph formula x range x np array x rang
  • 添加不同形状的 numpy 数组

    我想添加两个不同形状的 numpy 数组 但不进行广播 而是将 缺失 值视为零 可能最简单的例子是 1 2 3 2 gt 3 2 3 or 1 2 3 2 1 gt 3 2 3 1 0 0 我事先不知道形状 我正在弄乱每个 np shape
  • 如何使用Python创建历史时间线

    So I ve seen a few answers on here that helped a bit but my dataset is larger than the ones that have been answered prev
  • 无法在 Python 3 中导入 cProfile

    我试图将 cProfile 模块导入 Python 3 3 0 但出现以下错误 Traceback most recent call last File
  • Pandas:merge_asof() 对多行求和/不重复

    我正在处理两个数据集 每个数据集具有不同的关联日期 我想合并它们 但因为日期不完全匹配 我相信merge asof 是最好的方法 然而 有两件事发生merge asof 不理想的 数字重复 数字丢失 以下代码是一个示例 df a pd Da
  • Jupyter Notebook 内核一直很忙

    我已经安装了 anaconda 并且 python 在 Spyder IPython 等中工作正常 但是我无法运行 python 笔记本 内核被创建 它也连接 但它始终显示黑圈忙碌符号 防火墙或防病毒软件没有问题 我尝试过禁用两者 我也无法
  • 将图像分割成多个网格

    我使用下面的代码将图像分割成网格的 20 个相等的部分 import cv2 im cv2 imread apple jpg im cv2 resize im 1000 500 imgwidth im shape 0 imgheight i
  • 向 Altair 图表添加背景实心填充

    I like Altair a lot for making graphs in Python As a tribute I wanted to regenerate the Economist graph s in Mistakes we
  • 解释 Python 中的数字范围

    在 Pylons Web 应用程序中 我需要获取一个字符串 例如 关于如何做到这一点有什么建议吗 我是 Python 新手 我还没有找到任何可以帮助解决此类问题的东西 该列表将是 1 2 3 45 46 48 49 50 51 77 使用
  • Rocket UniData/UniVerse:ODBC 无法分配足够的内存

    每当我尝试使用pyodbc连接到 Rocket UniData UniVerse 数据时我不断遇到错误 pyodbc Error 00000 00000 Rocket U2 U2ODBC 0302810 Unable to allocate
  • 如何使用 Pycharm 安装 tkinter? [复制]

    这个问题在这里已经有答案了 I used sudo apt get install python3 6 tk而且效果很好 如果我在终端中打开 python Tkinter 就可以工作 但我无法将其安装在我的 Pycharm 项目上 pip

随机推荐

  • matlab中传递和保存匿名函数

    我想要一个函数 例如 一个 fit 函数 返回一个匿名函数 通常存储在struct 我可以保存并稍后使用 然而 路过 func倾向于传递函数指针而不是函数本身 是一个inline函数是做到这一点的唯一方法吗 我想避免inline因为它非常慢
  • Django 选择字段

    我正在尝试解决以下问题 我的网页只能看到版主 此页面显示的字段 用户注册后 用户名 名字 姓氏 电子邮件 状态 相关性等 我需要显示带有此字段的数据库中存储的所有用户信息的表 但其中两个字段有选择 所以我想做出一个选项 版主可以选择另一个选
  • 简单地将 OpenMp Parallel for 转换为 c# Parallel for

    你好 我正在将这个 c openmp 并行转换为 c 并行 但它说 错误 1 并非所有代码路径都返回 lambda 表达式类型的值 System Func
  • 测试pdo的php代码可用吗?

    我想用PDO http php net manual en book pdo php但我不确定我的主机是否已正确设置 我如何在 PHP 中测试它是否已设置并适用于 MySQL php 5 1 始终安装 PDO 您可以使用 phpinfo 检
  • 扩展方法需要将类声明为静态

    为什么扩展方法要求声明类是静态的 这是编译器的要求吗 它在 C 4 规范的语言规范第 10 6 9 节中规定 当方法的第一个参数 包括 this 修饰符 即 方法被认为是一个扩展 方法 扩展方法只能是 以非泛型 非嵌套方式声明 静态类 第一
  • Three.js:有没有办法获取组的边界框

    我可以为 Threejs js 中的组获取 边界框吗 我在 Three js 中有一个对象列表 我将它们全部分组在一个单元中 我想获取组的高度和宽度 所以我尝试使用 Box3 来确定高度和宽度 有什么方法可以获取 Threejs 中对象组的
  • 在 Rails 集成规范中向同一控制器发出两个请求

    我在 Rails 集成测试中使用 rspec 向同一个 url 发出两个请求时遇到问题 it does something do get something status gt any other header lt lt lt lt lt
  • 如何在 Bash 中通过curl从谷歌驱动器下载大文件?

    我想制作一个非常简单的 bash 脚本 用于通过 google 驱动器下载文件Drive API 所以在这种情况下 谷歌驱动器上有一个大文件 我安装了OAuth 2 0 Playground在我的谷歌驱动器帐户上 然后在Select the
  • 是否有某些情况下 SIGKILL 不起作用?

    是否存在在 Linux 上运行的应用程序未阻止信号的情况SIGKILL 不会被射击杀死SIGKILL signal SIGKILL无法被阻止或忽略 SIGSTOP也不可以 如果进程在系统调用 内部 被阻塞 等待 I O 就是一个例子 等待失
  • 你如何优化你的Javascript?

    嗯 简单的问题 对吧 但没有那么简单的答案 在 Firefox 中 我使用 Firebug 控制台 配置文件 但是 在其他浏览器中该怎么办 像 Internet Explorer Opera Safari 在 Windows 上 随着时间的
  • 如何生成包含 R 中数据帧数据的 QR 码?

    我有一个实验室分析仪 可以生成 csv 或 xlsx 格式的结果 但现在我必须手动将输出结果手动输入到我们的结果跟踪软件系统中 因为复制粘贴不起作用 我想编写一个 R 脚本 可以将 csv 的结果转换为软件程序 我能想到的最好方法是将结果生
  • exec*() 后内存使用情况会发生什么

    C 父程序进行一些处理并分配内存 然后调用 execvp 所有已分配但未释放的内存会发生什么 它是自动释放还是作为垃圾保留 exec 用新程序完全替换了旧进程的内存 这包括所有分配的内存 因此不会留下任何垃圾 但请注意 文件描述符等其他资源
  • 如何理解Haskell中的“柯里化”?

    假设有一个名为 smallerc 的函数 smallerc Integer gt Integer gt Integer smallerc x y if x lt y then x else y 为什么不使用以下方式声明该函数 smaller
  • gcloud 应用程序部署“--appyaml”标志似乎不起作用

    对于 Google App Engine 我想注入env variables进入我的app yaml部署后 在文档中gcloud app deploy 我看到有标志 appyaml这将 使用特定的 app yaml 进行部署 该 app y
  • ASP.NET MVC - 显示项目列表,每个项目都有一个项目列表

    我希望这是解释这一点的最好方式 我有 3 个视图对象 学校 课程和班级 每所学校都有多个课程 每个课程可以有多个班级 将一门课程视为一个学习计划 班级是实际的班级 在我的主视图中 我显示所有学校 然后单击一所学校即可转到它 在该 课程视图
  • Zend Framework:控制器目录中的子目录

    我正在为我的网站使用 Zend Framework 并且刚刚创建了一个特殊的模块 api 来创建 嗯 一个 API 现在 我的模块中有很多控制器 我想在此控制器目录中创建子目录以 整理 它 我的新结构将是这样的 controllers co
  • 根据条件删除整行无法处理 400,000 行

    我有这个宏来删除那些不是 chr9 的整行 我总共有 401 094 行 它似乎编译得很好 但我的 Excel 冻结了 我必须强制退出 我认为这可能是一个低效的算法或者代码中的一些错误 Sub deleteNonChr9 Dim lastr
  • 用 nom 5.0 解析数字

    我正在尝试使用 Nom 5 0 解析一个大文件 数十 GB 流 解析器的一部分尝试解析数字 use nom IResult use nom character streaming char digit1 use nom character
  • 在测试中覆盖 Django 缓存设置

    我在用着Django DummyCache https docs djangoproject com en 1 8 topics cache dummy caching for development然而 在我的测试中 有一些测试依赖于真实
  • Pandas 重新索引数据框问题

    假设我有以下数据框 A B 0 1986 87 232131 1 1987 88 564564 2 1988 89 123125 等等 我正在尝试重新索引