私のデータフレームに新しい列を追加しようとしました。うまくいきません...うまくいきますが、常にSettingWithCopyWarningsがスローされます。CopyWarningと単語カウントを設定する
私はすべてのメソッドproposed hereを使用し、解決のために他のStackoverflowスレッドも検索しましたが、まだ到着しません。
DataFrameに新しい列として追加される単語の動的リストがあります。各列には、テキストの行にある単語の数があるはずです。
import re
import pandas as pd
df = pd.read_csv('manyLinesOfText.csv')
word_lst = ['foo', 'bar', 'spam']
def element_word_count(text, **kwds):
return float(len(re.findall(kwds['kwds']['countword'], text)))
for word in word_lst:
df[word] = df['textcolumn'].apply(element_word_count, kdws = {'countword':word})
これは機能しますが、迷惑な警告が表示されます。
私はassign
を試しましたが、assignの構文は "単語"を列のタイトルとして解釈するため、全く動作しません。
私はdf.insert
を試しましたが、これはNoneType例外ではありません。これは、私のdfが間違いなくNoneTypeではないので奇妙です。
私はdf.loc[:,word]
を試しましたが、何も解決しません。それは動作し、同じ例外がスローされます。
たぶん私は一日の仕事の後、私の脳に結びついているだけかもしれませんが、私は解決策を見つけることができません。
私はdf.apply
の私の使用がちょっと変わったと思うので、誰かが与えられた動的な単語のリストを数えさせてくれたら、私は何でもできます。
ありがとうございます!
「word_count」とは何ですか? – user2357112
入力ミスを修正しました。ありがとう。 – Anderas