如何使用pandas统计sqlite表中每个id下各单词的出现次数
实现方案
- 首先从SQLite的word_table表读取数据到Pandas DataFrame,参考代码如下:
import pandas as pd import sqlite3 # 替换为你实际的SQLite数据库文件路径 db_conn = sqlite3.connect("your_database.db") df = pd.read_sql("SELECT id, word FROM word_table", db_conn) db_conn.close()
- 接着分组统计生成带count列的目标DataFrame,两种实现方式均可:
方式1:直接按id、word双字段分组计数,代码最简:
result_df = df.groupby(["id", "word"], as_index=False).size().rename(columns={"size": "count"})
方式2:先为每行添加分组计数后去重,适合需要保留原数据其他字段的场景:
df["count"] = df.groupby(["id", "word"])["word"].transform("count") result_df = df.drop_duplicates(subset=["id", "word"], ignore_index=True)
执行后输出的result_df即为符合要求的结果。
内容的提问来源于stack exchange,提问作者Ms Y
相关产品推荐
相关产品推荐

