Начальная загрузка Minikube не удалась

Вот решение, которое создает обычный DataFrame вместо серии dicts:

pd.DataFrame.from_records(df1.B).groupby(df1.A).sum()

Первый шаг преобразует вашу серию dicts в обычный DataFrame с одним столбцом на ключ. Тогда это простая группа и сумма, чтобы получить окончательный результат:

      Word1  Word2  Word3  Word4  Word5
A                                      
Cat1   18.0    7.0     11    2.0    0.0
Cat2    0.0    7.0      9    7.0    2.0

Сохранение ваших данных в таком формате будет намного более эффективным, чем серия dicts, если значения не очень разрежены (т.е. матрица является большой и в основном нулями).

Если вам нужен результат, чтобы быть серией dicts, это работает:

def add_dicts(s):
    c = Counter()
    s.apply(c.update)
    return dict(c)

df1.groupby('A').B.agg(add_dicts)

Он производит именно ваш df_out.

0
задан orc 18 January 2019 в 19:25
поделиться