SpaCy kullanarak Pandas DataFrame'den Adlandırılmış Varlıklar nasıl çıkarılır

Dec 19 2020

Bu sorunun ilk cevabını kullanarak İsimli Varlıkları çıkarmaya çalışıyorum ve kod aşağıdaki gibidir

for i in df['Article'].to_list():
    doc = nlp(i)
    for entity in doc.ents:
        print((entity.text))

Ama varlıkları basmıyor. Denedim print(i)ve print(doc)her iki değişkenin de değerleri var ve df['Article']haber metni içeriyor. Birisi neden ikinci döngünün varlıkları çıkarmadığına yardımcı olabilir mi? teşekkür ederim

DÜZENLEME:
Bu veri kümesi dosyasıdır, lütfen yaptığım ön işlemeyi oluşturmak için aşağıdaki kodu çalıştırın.

df.iloc[:,0].dropna(inplace=True)
df = df[df.iloc[:,0].notna()]

özel karakterleri kaldırmak için df['Articles']

df['Article'] = df['Article'].map(lambda x: re.sub(r'\W+', '', x))

Yanıtlar

1 WiktorStribiżew Dec 19 2020 at 01:18

İle df['Article'].map(lambda x: re.sub(r'\W+', '', x)), makalelerinizden tüm boşluk karakterlerini kaldırırsınız.

Kullanmanız gerekiyor

df['Article'] = df['Article'].str.replace(r'(?:_|[^\w\s])+', '')

Bu normal ifadeyle, boşluklar dışındaki yalnızca özel karakterleri kaldırırsınız.