Python / Panda:如何生成二维记录

时间:2018-08-19 22:37:25

标签: python-3.x pandas

我有一个数据框,其记录如下:

year    month   day min-temp    max-temp    precipitation   snow    snow-cover
2018    7   30  77  51  0.0 0.0 0.0
2018    7   29  75  52  0.04    0.0 0.0
2018    7   28  77  56  0.01    0.0 0.0
2018    7   27  80  56  0.35    0.0 0.0

我有大约150年的记录,但是,如果某些列中缺少某些数据,则该列的值为空。此外,每年的所有日期都无法提供记录。

我已经创建了一个数据结构或数据框(以便以后可以在图形中绘制),该数据结构或数据框应具有一年中的月份,而列则为[min-temp,max-temp,降水,雪,雪-封面]基于25年。

我的数据框/数据结构值应类似于(示例):

enter image description here

如果25年来该月没有记录,则任何列都可能缺少数据。如果缺少数据,则该条目将保留“”值。

有办法吗?

1 个答案:

答案 0 :(得分:3)

您可以将groupbyagg一起使用

d={'min-temp':'min','max-temp':'max','precipitation':'sum','snow':'sum','snow-cover':'sum'}
df.groupby(['year','month']).agg(d)
Out[220]: 
            precipitation  snow-cover  max-temp  snow  min-temp
year month                                                     
2018 7                0.4         0.0        56   0.0        75