Как использовать groupby для объединения строк в пандах Python?

У меня в настоящее время есть датафрейм наверху. Есть ли способ использовать функцию groupby, чтобы получить другой фрейм данных, чтобы сгруппировать данные и объединить слова в формат, как описано ниже, используя панд Python?

Спасибо

[

 johnchase30 июн. 2016 г., 17:18
Здесь есть похожий вопрос:stackoverflow.com/questions/17841149/...

Ответы на вопрос(1)

Решение Вопроса

Вы можете подать заявкуjoin в вашей колонке послеgroupby:

df.groupby('index')['words'].apply(','.join)

Пример:

In [326]:
df = pd.DataFrame({'id':['a','a','b','c','c'], 'words':['asd','rtr','s','rrtttt','dsfd']})
df

Out[326]:
  id   words
0  a     asd
1  a     rtr
2  b       s
3  c  rrtttt
4  c    dsfd

In [327]:
df.groupby('id')['words'].apply(','.join)

Out[327]:
id
a        asd,rtr
b              s
c    rrtttt,dsfd
Name: words, dtype: object
 EdChum30 июн. 2016 г., 18:52
Извините, вы после reset_index () выше?
 user365557401 июл. 2016 г., 02:39
Большое спасибо, сэр! Я сделал df.groupby ('id') ['words']. Apply (','. Join) .reset_index (), а затем df1 = pd.DataFrame (data = df, columns = ['id', 'words'). ]) и это работает!
 user365557430 июн. 2016 г., 18:44
Спасибо, Edchum, я пытаюсь преобразовать серию из группы, в которой вы помогли, обратно в информационный фрейм, чтобы я мог выполнить слияние, но у меня возникают проблемы с этим, потому что у меня нет имени столбца для объединенных элементов. Как я могу добавить имя столбца? Я пытался перейти в dataframe с помощью pd.DataFrame (data = df, columns = []), но он не работает, еще раз спасибо за любой опыт.

Ваш ответ на вопрос