2017-08-29 3 views
0

でなければなりませんが、私はそれは私がデータを掃除していますPythonのパンダはTypeError:最初の引数は、私は、超簡単な質問のため申し訳ありませんが、文字列またはコンパイルされたパターン

を動作させると、名前があれば、フラグを追加することはできません(これは2つの列の名字に分かれています)が間違っています。私は複数のパターンを確立しましたが、今は別々のステートメントで作業していましたが、これらのステートメントをすべて1つにマージできますか?

pattern = "\?" 
match = incremental['First_Name'].str.contains(pattern) | incremental['Last_Name'].str.contains(pattern) 
incremental['Name_Flag'] = np.where(match, 'Y', '') 

pattern = "tourist" 
    match = incremental['First_Name'].str.contains(pattern) | incremental['Last_Name'].str.contains(pattern) 
    incremental['Name_Flag'] = np.where(match, 'Y', '') 

2番目のステートメントが最初のステートメントを上書きするため、これは機能しません。

pattern = ("tourist","/?") 
     match = incremental['First_Name'].str.contains(pattern) | incremental['Last_Name'].str.contains(pattern) 
     incremental['Name_Flag'] = np.where(match, 'Y', '') 

あなたは?と文字列でtourist両方のための検索のような正規表現patterns-の両方を探ししようとしている場合、私は、第二のバージョン(当然ながら)

TypeError: first argument must be string or compiled pattern. 
+1

少し混乱しています。いくつかのサンプル入力と期待される出力を追加できますか?あなたは正規表現のパターンを組み合わせるために探していますか?両方のパターンをチェックしたいのですか?最終目標の質問は何ですか? – MattR

答えて

1

のエラーを取得します。 |演算子を使用できます。だから、疑問符ORがあれば「あなたは正規表現をチェックしたい場合はtourist`は、文字列

であり、pythexは本当に良い場所であるかどうかを確認します

pattern = "tourist|\?" 

これにpatternを変更します。私はあなたのためにテストをしました。

+0

パーフェクト - ありがとう – jeangelj

+0

Ph - wow - "pythex"ありがとう、Googleがこの時間前に私に与えてくれたことを祈ってくれてありがとう... – jeangelj

+0

@jeangelj私の喜び。楽しいコーディング – MattR

関連する問題