0

我有一个新闻标题数据集。我想根据与过去十天的标题的文本相似性删除重复或高度相似的标题。对于高度相似的标题,我想保留最早的。例如,我将"SECTION:BUSINESS; Business; Events; Pg.2"只保留2014-08-04一个。

我正在考虑根据日期和标题进行连接,其中日期在过去十天内,如下所示(在 SQL 语句中):

create table df_joined as 
select a.*, b.date as date_b, b.Headline as Headline_b from 
df a inner join df[["Date", "Headline"]] b on a.date - b.date <= 10

接下来,我可以计算相似度度量:

df_joined["Similarity"] = similar_function (df_joined.Headline, df_joined.Headline_b)

然后,对于每组(date, headline),如果任何行的相似度高于所选基准,我将删除整个组。最后,我折叠组。

不知道如何在 Pandas 中执行此操作。谢谢!

样本数据

4

1 回答 1

1

你看过函数 pandas.Series.unique 吗?它返回一个没有重复的数组,并且可以处理字符串。

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.unique.html

于 2019-04-09T00:33:47.930 回答