创建单词列表并按索引分组

Posted

技术标签:

【中文标题】创建单词列表并按索引分组【英文标题】:Create list of words and group them by index 【发布时间】:2021-11-14 20:57:46 【问题描述】:

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

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

等等。

我想以这种方式按索引对它们进行分组: 对于 id 1-[word1,word2,word3] 对于 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)    

我需要进行哪些更改才能使其正常工作?

提前谢谢你

【问题讨论】:

所以您想将所有word 条目与特定id 合并到一行中? 是的,我有 7000 行带有单词的索引 试试df.groupby("id").agg(list) 【参考方案1】:
# 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

【讨论】:

有帮助,但是如果我有 7000 行索引和他们的话,我应该这样做吗? 你在你的 7000 行数据集上试过我的答案了吗?您是否面临任何问题? 它有效,但当我出于某种原因提取 SCV 文件时无效 在您的问题中发布问题的屏幕截图

以上是关于创建单词列表并按索引分组的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 查找子字符串匹配并按匹配全字分组

Python Pandas:按日期分组,并按时间戳访问每个组

如果列表中的索引,熊猫按功能分组以执行不同的方法

如何按游戏分组并选择每个游戏的流派列表[重复]

给定一个单词列表,如何开发一种算法方法来对它们进行语义分组?

drupal 7 - 按分类术语分组