【问题标题】:Python Pandas pivot_table : unexpected resultsPython Pandas pivot_table:意外结果
【发布时间】:2021-03-04 08:53:16
【问题描述】:

让我们采用以下熊猫数据框:

df = pandas.DataFrame({'date':[13,13,13,13],'city':['NY','NY','SF','SF'],'timeOfTheDay':['day','night','day','night'],'count':[2,3,4,5]})

让我来说明这一点:

     date city timeOfTheDay  count
0    13   NY        day        2
1    13   SF        night      3
2    13   NY        day        4
3    13   SF        night      5

我一直在尝试以下两种方法:

pivot1 = pd.pivot_table(df,index=['date','city'],columns=['timeOfTheDay'],values=['count'])
pivot2 = df.pivot_table('count',['date','city'],'timeOfTheDay')

预期结果:

           day  night
 date city            
 13   NY      2      3
      SF      4      5

我得到的是(在这两种情况下):

timeOfTheDay  day  night
date city               
13   NY       3.0    NaN
     SF       NaN    4.0

你得到相同的结果吗? 知道我应该如何更改命令以获得预期的 pivot_table 结果吗?

【问题讨论】:

    标签: python pandas pivot-table


    【解决方案1】:

    对我来说,在没有[] 的情况下使用您的解决方案以避免MutliIndex

    pivot1 = pd.pivot_table(df,index=['date','city'],columns='timeOfTheDay',values='count')
    print (pivot1)
    timeOfTheDay  day  night
    date city               
    13   NY         2      3
         SF         4      5
    

    【讨论】:

    • 谢谢耶兹瑞尔。刚刚测试了你的建议,但仍然得到相同的结果,出现 NaN 和错误的数字(3.0 和 4.0)......
    • @JCDB - 问题出在有问题的数据上?还是使用真实数据?
    • 有问题的数据(上面的简单 4x4 示例)
    • @JCDB - 很奇怪,你的 pandas 版本是什么?
    • 解决方案很好我的测试数据框中有问题,解释以前的 cmets
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 1970-01-01
    • 1970-01-01
    • 2018-12-28
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    相关资源
    最近更新 更多