【问题标题】:Using Pandas, why is the column/series header not showing at the top of an output使用 Pandas,为什么列/系列标题未显示在输出顶部
【发布时间】:2020-09-03 08:48:00
【问题描述】:

在:

def answer_three():
    Top15 = answer_one()
    
    #https://stackoverflow.com/questions/51826751/average-of-dataframe-columns
    
    Top15['avgGDP'] = Top15[['2006', '2007', '2008', '2009', '2010', '2011', '2012', '2013', '2014', '2015']].mean(axis=1)
    Top15 = Top15.sort_values('avgGDP', ascending=False)
    
    return Top15['avgGDP']

answer_three()

输出:

Country      
UU           15368
CF            6348
J             5542
G             3493
F             2681
UT            2487
B             2189
IA            2120
IB            1769
CG            1660
R             1565
S             1418
A             1164
S             1106
T             7704
Name: avgGDP, dtype: float64

观察:

标题/系列名称与数据类型一起显示在底部。我研究过但找不到答案,只添加/重命名标题,只提取标题等。这不是我的问题,我只是希望输出在我正常调用数据帧时看起来,但只有这个选择/单数字段在这种情况下,即我想要:

Country      avgGDP
UU           15368
CF            6348
J             5542
G             3493
F             2681
UT            2487
B             2189
IA            2120
IB            1769
CG            1660
R             1565
S             1418
A             1164
S             1106
T             7704

我看到输出完整帧之间的唯一不同之处在于我请求的是单个特定列。我假设我必须在我的 return 语句中添加一些东西,所以它的输出就像我调用一个完整的数据框一样。

提前感谢您的时间和帮助!

谢谢,

马特

【问题讨论】:

  • Top15['avgGDP'] 返回一个 Series,即 1d。仔细检查文档,但 Series 可能没有 columns 属性。 Top15[['avgGDP']] 会给你一个 1 列的 DataFrame。

标签: python pandas dataframe header series


【解决方案1】:

系列名称始终显示在系列下方。 DataFrame 列名称显示在列上方。您可以将 Series 转换为单列 DataFrame:

pd.DataFrame(Top15['avgGDP'])

它会如你所愿地显示出来。

【讨论】:

  • 成功了。我明白。我只是在创建一个视图,但是为了我想要的,我需要创建一个新的 DataFrame。现在有道理了。谢谢DYZ!!!
猜你喜欢
  • 1970-01-01
  • 2018-06-02
  • 2016-05-17
  • 1970-01-01
  • 2017-07-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多