【发布时间】:2015-04-12 17:25:31
【问题描述】:
我有一个类似于以下内容的 pandas DataFrame 对象:
In [106]: df
Out [106]: df[
Amount Category
date
2014-08-05 18.40 Thing01
2014-08-05 192.60 Thing01
2014-08-05 10.42 Thing02
2014-08-05 13.34 Thing07
2014-08-05 364.56 Thing04
2014-08-05 843.21 Thing03
2014-08-04 14.65 Thing04
2014-08-04 56.98 Thing11
2014-08-04 76.21 Thing99
2014-08-04 786.22 Thing99
2014-08-04 87.44 Thing99
2014-08-04 53.23 Thing01
2014-08-04 32.12 Thing99
]
我想按“类别”对这些数据进行分组,并使用结果创建一个 Python 字典,如下所示:
In [107]: OutInfo
Out [107]: OutInfo = {
Thing01:
Amount
date
2014-08-05 18.40
2014-08-05 192.60
2014-08-04 53.23
Thing02:
Amount
date
2014-08-05 10.42
Thing07:
Amount
date
2014-08-05 13.34
Thing04:
Amount
date
2014-08-05 364.56
2014-08-04 14.65
Thing03:
Amount
date
2014-08-05 843.21
Thing11:
Amount
date
2014-08-04 56.98
Thing99:
Amount
date
2014-08-04 76.21
2014-08-04 786.22
2014-08-04 87.44
}
我尝试过使用诸如 df.groupby("Category") 之类的命令,最后带有各种功能,包括 .apply 方法(我也不完全理解......)。我尝试了其他方法,但一天有多个条目这一事实使我无法使用这些方法。提前感谢您的帮助!
-杰里米
【问题讨论】:
-
我试图避免使用循环。我已经有一个使用“for”循环的解决方案,但速度很慢。
标签: python-3.x pandas group-by