【问题标题】:How to change the location of the column name in pandas?如何更改熊猫中列名的位置?
【发布时间】:2019-03-01 12:18:02
【问题描述】:

练习1:每种葡萄酒的最低和最高价格是多少?创建一个 Dataframe,其索引是品种类别的最小值和最大值。

answ = pd.DataFrame()
answ['price_max_variety'] = reviews.groupby('variety').price.max()
answ['price_min_variety'] = reviews.groupby('variety').price.min()
answ.head()

输出:

price_max_variety price_min_variety
variety # this is my problem # what is this row?
Abouriou 75.0 15.0
Agiorgitiko 66.0 10.0
Aglianico 180.0 6.0
Aidani 27.0 27.0
Airen 10.0 8.0

我希望它做对了。我不知道如何使它看起来正确,并且由于通用词无法找到相关信息。

【问题讨论】:

  • 如果你连练习题中的问题都复制成文本供我们查看,你怎么能指望别人替你付出努力呢?给你做作业吗?
  • @user3483203 这不是功课,我只是在努力学习。我认为图像更有效我不知道如何向您展示输出。我的问题是关于输出的美学问题。

标签: python-3.x pandas


【解决方案1】:

您指出的灰色空白行是为 DataFrame 的索引名称腾出空间,即variety。该索引来自df.groupby() 的默认行为:分组列最终出现在结果 DataFrame 的索引中。

要覆盖它,请尝试df.groupby('variety', as_index=False)。或者,如果您有一个带有要移动到列中的索引的 DataFrame,请运行 df.reset_index()

【讨论】:

  • df.groupby('variety', as_index=False) 给了我以下信息:ValueError:无法将输入数组从形状(707,2)广播到形状(707)。但是, df.reset_index('varierty') 工作得很好,我从没想过将它反转回一列以获得所需的效果。非常感谢!
  • 不客气!出现第一条错误消息可能是因为您尝试将 groupby 的两列结果分配给 DataFrame 的单列。
猜你喜欢
  • 2021-12-28
  • 2020-08-06
  • 1970-01-01
  • 2016-02-29
  • 1970-01-01
  • 2017-10-01
  • 2020-10-13
  • 2022-10-15
  • 2013-03-31
相关资源
最近更新 更多