首页 > 解决方案 > 创建单词列表并按索引分组

问题描述

我有索引列,每个索引都有对应的单词:

ID 单词
1 单词1
1 字2
1 词3
2 字4
2 单词5

等等。

我想以这种方式按索引对它们进行分组: for id 1-[word1,word2,word3] for id 2-[word4,word5]

等等

并提取到 CSV 文件

我有这个代码:

df = pd.DataFrame(data)
d={"word":"first"}
df_new = df.groupby(df['id'], as_index=False).aggregate(d).reindex(columns=df['word'])
print (df_new)

df_new.to_csv('test.csv', sep='\t', encoding='utf-8', index=False)    

我需要改变什么才能让它工作?

先感谢您

标签: pythonpandaslistgroup-byaggregation-framework

解决方案


# Import Dependencies
import pandas as pd

# Create DataFrame
data = {'id': [1, 1, 1, 2, 2], 'word': ['word1', 'word2', 'word3', 'word4', 'word5']}
df = pd.DataFrame(data)

# Groupby and Merge
df = df.groupby('id', as_index=False).agg({'word' : ','.join})  
# Result

    id  word
0   1   word1,word2,word3
1   2   word4,word5

推荐阅读