Python 在列表字典中添加元素

Python 在列表字典中添加元素,python,python-2.7,Python,Python 2.7,我有以下字典: dic = {title: ['a', 'a', 'a', 'b', 'b', 'c', 'c'], avg1: [1, 2, 3, 4, 5, 6, 7], avg2: [2, 2, 3, 4, 7, 9, 7]} 我想根据列表“标题”中的项目添加列表“avg1”和“avg2”中的项目。由此产生的dic将是: dic = {title: ['a', 'b', 'c'], avg1: [6, 9, 13], avg2: [7, 11, 16]} 我建议您重新考虑您的数据结构

我有以下字典:

dic = {title: ['a', 'a', 'a', 'b', 'b', 'c', 'c'], avg1: [1, 2, 3, 4, 5, 6, 7], avg2: [2, 2, 3, 4, 7, 9, 7]} 
我想根据列表“标题”中的项目添加列表“avg1”和“avg2”中的项目。由此产生的dic将是:

dic = {title: ['a', 'b', 'c'], avg1: [6, 9, 13], avg2: [7, 11, 16]}

我建议您重新考虑您的数据结构,您存储信息的方式有点笨拙。下面的内容可以在熊猫身上做你想做的事情,但这是对熊猫的一种笨拙的使用(我指的是最后一行)


为什么会被否决?这是一个明确的问题。虽然我没有投反对票,但我想这是因为这读起来有点像“请为我编写此代码”的问题。如果OP能更多地解释一下他们遇到的困难,那将是非常有用的。
import pandas as pd

>>> d = {title: ['a', 'a', 'a', 'b', 'b', 'c', 'c'], avg1: [1, 2, 3, 4, 5, 6, 7], avg2: [2, 2, 3, 4, 7, 9, 7]}

>>> df = pd.DataFrame(d)
>>> df
   avg1  avg2 title
   0     1     2     a
   1     2     2     a
   2     3     3     a
   3     4     4     b
   4     5     7     b
   5     6     9     c
   6     7     7     c
>>> g = df.groupby('title')

>>> g.avg1.apply(sum)
title
a         6
b         9
c        13
Name: avg2, dtype: int64

>>> g.avg2.apply(sum)
title
a         7
b        11
c        16
Name: avg2, dtype: int64

# An very awkward use of pandas
>>> dict(title=g.avg1.apply(sum).index.values.tolist(),
>>>      avg1=g.avg1.apply(sum).values.tolist(),
>>>      avg2=g.avg2.apply(sum).values.tolist())
{'avg1': [6, 9, 13], 'avg2': [7, 11, 16], 'title': ['a', 'b', 'c']}