当前位置: 首页 > 面试题库 >

熊猫对有关索引重复条目的警告

萧元徽
2023-03-14
问题内容

在Pandaspivot方法的文档中,我们具有:

Examples
--------
>>> df
    foo   bar  baz
0   one   A    1.
1   one   B    2.
2   one   C    3.
3   two   A    4.
4   two   B    5.
5   two   C    6.

>>> df.pivot('foo', 'bar', 'baz')
     A   B   C
one  1   2   3
two  4   5   6

DataFrame的结构如下:

   name   id     x
----------------------
0  john   1      0
1  john   2      0
2  mike   1      1
3  mike   2      0

我想要这样的东西:

      1    2   # (this is the id as columns)
----------------------
mike  0    0   # (and this is the 'x' as values)
john  1    0

但是当我运行该pivot方法时,它是在说:

*** ReshapeError: Index contains duplicate entries, cannot reshape

这没有意义,即使在示例中,该foo列上也有重复的条目。我将name列用作数据透视表的索引,即pivot方法调用的第一个参数。


问题答案:

对我来说还好吗?您可以发布正在使用的确切数据透视方法调用吗?

In [4]: df.pivot('name', 'id', 'x')
Out[4]: 
id    1  2
name      
john  0  0
mike  1  0


 类似资料:
  • 我试图做为。具有和其他在中具有。这是我的代码: 我得到这个错误: 什么,我哪里做错了?

  • 我不确定我在哪里误入歧途,但我似乎无法重置数据帧上的索引。 当我运行时,我得到下面的输出: 如您所见,数据帧是一个切片,因此索引超出了范围。我想做的是重置此数据帧的索引。所以我运行。这将产生以下结果: 这看起来像是一个新的索引,但事实并非如此。运行同样,索引仍然相同。试图使用或会导致数据帧出现问题。 如何才能真正重置索引?

  • 当我将函数应用于Groupby对象的多个列时,Pandas会抛出一个Future Warning。它建议使用列表作为索引,而不是元组。一个人会怎么做?

  • 我开始学习熊猫,发现了一个我似乎无法解决的问题。我正在从csv文件加载数据,需要删除一些与几个字符串匹配的行。 CSV: 我所尝试的: 但我得到的错误如下: 我错过了什么?另外,如果我想传递一个列表并从列表中删除所有匹配字符串的行,该怎么办?例子:

  • 我想用替换大于任意数字(本例中为100)的