按主题分类文本的日期标记化

问题描述 投票:1回答:1

我需要按日期对以下列进行标记。

Testo                                                         Giorno
    LE DESIGNAZIONI ARBITRALI DELLE SEMIFINALI DI RITORNO.  06/02/2020  
    La Rai ha inserito nei suoi palinsesti la diretta tv delle semifinali di ritorno di Coppa Italia, rinviate a febbraio per l'emergenza coronavirus.  06/02/2020
     Sabato Napoli-Inter completerà il quadro delle semifinali di Coppa Italia: la finale è in programma mercoledì 17 giugno all'Olimpico. 07/02/2020
    Le semifinali di ritorno e la finale di Coppa Italia si disputeranno senza i tempi supplementari    08/02/2020

类似的东西。

['le','designazioni','arbitrali','delle',..., 'emergenza','coronavirus'] on 6/02/2020
['Sabato','Napoli','-','Inter',...,'Olimpico'] on 7/02/2020
['Le','semifinali','di',...,'supplementari'] on 08/02/2020

我需要这个来进行LDA的主题分类。我尝试了以下方法。

stop = stopwords.words('italian')

df_train['Testo_tok'] = df_train.apply(lambda row: nltk.word_tokenize(row['Testo']), axis=1)
df_train['Testo_tok']= df_train['Testo_tok'].apply(lambda x: [item for item in x if item not in stop])

df_train['Testo_tok'] = df_train.groupby(['Giorno'])['Testo'].transform(lambda x: ','.join(x)).str.split(",")
tok_text_list=df_train['Testo_tok'].tolist()

但是输出的结果并没有给我预期的标记化。

下一步是应用 tok_text_list to

dictionary_LDA = corpora.Dictionary(tok_text_list)
dictionary_LDA.filter_extremes(no_below=10)
corpus = [dictionary_LDA.doc2bow(list_of_tokens) for list_of_tokens in tok_text_list]
corpus

以便按日期确定主题。如何才能做到这一点?

python pandas nltk lda
1个回答
1
投票
stop = stopwords.words('italian') + list(string.punctuation)
df_train['Testo_tok'] = df_train.Testo.apply(nltk.word_tokenize).apply(lambda l: [i for i in l if i not in stop])
tok_text_list = df_train.groupby(['Giorno'])['Testo_tok'].apply(sum).tolist()

结果 print(*tok_text_list, sep='\n'):

['LE', 'DESIGNAZIONI', 'ARBITRALI', 'DELLE', 'SEMIFINALI', 'DI', 'RITORNO', 'La', 'Rai', 'inserito', 'palinsesti', 'diretta', 'tv', 'semifinali', 'ritorno', 'Coppa', 'Italia', 'rinviate', 'febbraio', "l'emergenza", 'coronavirus']
['Sabato', 'Napoli-Inter', 'completerà', 'quadro', 'semifinali', 'Coppa', 'Italia', 'finale', 'programma', 'mercoledì', '17', 'giugno', "all'Olimpico"]
['Le', 'semifinali', 'ritorno', 'finale', 'Coppa', 'Italia', 'disputeranno', 'senza', 'tempi', 'supplementari']
© www.soinside.com 2019 - 2024. All rights reserved.