2017-03-27 14 views
0

Python pandasデータフレームdfにフラグを追加したい場合は、test(大文字または小文字またはすべて大文字)という単語がTitleに含まれている場合は、 T新規列testpython pandas列の文字列にwordフラグが含まれている場合

これは私にエラーを与え、すべて大文字のシナリオを考慮していない:

df['Test_Flag'] = np.where(df[df['Title'].str.contains("test|Test")==True], 'T', '') 

ValueError: Length of values does not match length of index 

答えて

2

あなたはパラメータcase=Falsena=Falsecontainsが必要になります。

df['Test_Flag'] = np.where(df['Title'].str.contains("test", case=False, na=False), 'T', '') 

サンプル:どのように

df = pd.DataFrame({'Title':['test','Test',np.nan, 'a']}) 
df['Test_Flag'] = np.where(df['Title'].str.contains("test", case=False, na=False), 'T', '') 
print (df) 
    Title Test_Flag 
0 test   T 
1 Test   T 
2 NaN   
3  a 
+0

'TEST'のようなすべての大文字のシナリオを説明できますか? – jeangelj

+0

必要なパラメータ 'case = False' – jezrael

+0

ありがとう - 私はそれを試しましたが、空の行にもフラグを適用しました – jeangelj

関連する問題