2017-11-07 17 views
0

以下のコードでストップワードをデータフレームから削除しようとしています。エラーは発生しませんが、ストップワードはデータフレームから削除されません。例えばストップワードのリスト項目をテキストから削除するには

def stop_words(df): 

    stop_words = set(["a", "acaba", "altı","alti", "ama", "ancak","bir"]) 

    df['text'] = [word for word in df['text'] if word not in stop_words] 
    return df.text 

df.text = stop_words(df) 

[2] "ゲルSEN necektigimi BIRデBANA SOR" であるdf.text .ITは "BIR" 単語を削除しません。これをどうすれば解決できますか?

答えて

1

df['text']は文字列の列です。それを繰り返すと、それぞれの文を繰り返し処理します。あなたは何を期待しましたか?

各単語を分割して繰り返し処理する必要があります。あなたはリストの理解を使うことができます。またapplyを使用することができます。

def f(x): 
    return [w for w in x if w not in stop_words] 

df['text'] = df['text'].str.split().apply(f).str.join(' ') 
関連する問題