我是熊猫初学者。
我有以下数据:
.owl-carousel .owl-item .item {
border: 1px solid transparent;
box-shadow: inset 0px 0px 0px 1px #000000;
}
我想要:
a = [
{"content": '1', "time": '2020-01-01'}, {"content": '4', "time": '2020-01-01'},
{"content": '2', "time": '2020-01-02'},
{"content": '3', "time": '2020-02-01'}, {"content": '4', "time": '2020-02-02'},
{"content": '5', "time": '2020-03-01'}, {"content": '6', "time": '2020-03-02'}
]
答案 0 :(得分:3)
首先将字典列表转换为DataFrame
,然后将日期时间转换为YY-MM
格式:
df = pd.DataFrame(a)
g = pd.to_datetime(df['time']).dt.strftime('%Y-%m')
然后在dict理解中创建列表字典:
d1 = {k: v.to_dict('r') for k, v in df.groupby(g)}
如果性能很重要的另一种解决方案:collections.defaultdict
:
from collections import defaultdict
d = defaultdict(list)
for x in a:
d[x['time'][:7]].append(x)
d = dict(d)